Zone^55 Live!
Power Member
Boas, tenho um trabalho de programação o qual consiste em:
Criar um programa que permita não só a gestão das inscrições dos alunos nos turnos das disciplinas, mas também que possam "construir" o seu horário.
A informação deverá ser armazenada em estruturas de dados dinâmicas e para cada aluno a informação deverá conter:
- aluno
- disciplina
- turno
- inscrição
Para facilitar a escrita do código, foi-nos dada a seguinte estrutura a seguir:
Menu 1 Menu Principal
Opção 1.1 Horário de Aluno - Chama menu 2 permitindo criar/alterar o horário de um aluno.
Opção 1.2 Gerir Disciplinas - Chama menu 3 que permite criar/alterar disciplinas, turnos e efectuar listagens dos alunos por disciplina/turno.
Opção 1.3 Sair do Programa - Deve pedir confirmação ao utilizador e em caso afirmativo deve terminar a aplicação.
Menu 2 Horário Aluno
Opção 2.1 Mostra Horário Actual - Mostra as disciplinas e os turnos a que o aluno está inscrito.
Opção 2.2 Inscrição a uma Disciplina - Permite que o aluno se inscreva a uma disciplina, passando os turnos desta a estarem disponíveis para a escolha do aluno.
Opção 2.3 Eliminar Inscrição numa Disciplina - Permite que o aluno anule a inscrição a uma disciplina. Caso o aluno ja tenha feito a inscrição a algum turno dessa disciplina, o programa deve pedir confirmação para eliminar a inscrição tanto à disciplina como aos turnos dessa disciplina.
Opção 2.4 Inscrição a um Turno - Permite que o aluno se inscreva a um turno. O programa só deve permitir que o aluno se inscreva a turnos de disciplinas a que está inscrito.
Opção 2.5 Eliminar Inscrição num Turno - Permite que o aluno anule a inscrição a um turno, mantendo no entanto a inscrição à respectiva disciplina.
Opção 2.6 Eliminar Horário/Aluno - Permite eliminar todos os dados referentes às inscrições do aluno em disciplinas e turnos.
Menu 3 Gerir Disciplinas
Opção 3.1 Inserir Nova Disciplina
Opção 3.2 Alterar Disciplina
Opção 3.3 Eliminar Disciplina
Opção 3.4 Nº de Alunos por Disciplina
Opção 3.5 Nº de Alunos por Turno
Menu 4 Alterar Disciplina Deve Pedir ao utilizador o código da disciplina a alterar e depois apresentar as seguintes opções:
Opção 4.1 Alterar Dados da Disciplina
Opção 4.2 Inserir Turno
Opção 4.3 Alterar Turno
Opção 4.4 Eliminar Turno
Opção 4.5 Voltar ao Menu Anterior
Menu 5 Listagens de Dados
Opção 5.1 Listagem de Alunos numa disciplina
Opção 5.2 Listagem de alunos num turno
Opção 5.3 Voltar ao menu anterior - voltar ao menu 3.
Código que tenho até agora:
Isto é o Pseudo Código.
Toda a ajuda é bem vinda
Criar um programa que permita não só a gestão das inscrições dos alunos nos turnos das disciplinas, mas também que possam "construir" o seu horário.
A informação deverá ser armazenada em estruturas de dados dinâmicas e para cada aluno a informação deverá conter:
- aluno
- disciplina
- turno
- inscrição
Para facilitar a escrita do código, foi-nos dada a seguinte estrutura a seguir:
Menu 1 Menu Principal
Opção 1.1 Horário de Aluno - Chama menu 2 permitindo criar/alterar o horário de um aluno.
Opção 1.2 Gerir Disciplinas - Chama menu 3 que permite criar/alterar disciplinas, turnos e efectuar listagens dos alunos por disciplina/turno.
Opção 1.3 Sair do Programa - Deve pedir confirmação ao utilizador e em caso afirmativo deve terminar a aplicação.
Menu 2 Horário Aluno
Opção 2.1 Mostra Horário Actual - Mostra as disciplinas e os turnos a que o aluno está inscrito.
Opção 2.2 Inscrição a uma Disciplina - Permite que o aluno se inscreva a uma disciplina, passando os turnos desta a estarem disponíveis para a escolha do aluno.
Opção 2.3 Eliminar Inscrição numa Disciplina - Permite que o aluno anule a inscrição a uma disciplina. Caso o aluno ja tenha feito a inscrição a algum turno dessa disciplina, o programa deve pedir confirmação para eliminar a inscrição tanto à disciplina como aos turnos dessa disciplina.
Opção 2.4 Inscrição a um Turno - Permite que o aluno se inscreva a um turno. O programa só deve permitir que o aluno se inscreva a turnos de disciplinas a que está inscrito.
Opção 2.5 Eliminar Inscrição num Turno - Permite que o aluno anule a inscrição a um turno, mantendo no entanto a inscrição à respectiva disciplina.
Opção 2.6 Eliminar Horário/Aluno - Permite eliminar todos os dados referentes às inscrições do aluno em disciplinas e turnos.
Menu 3 Gerir Disciplinas
Opção 3.1 Inserir Nova Disciplina
Opção 3.2 Alterar Disciplina
Opção 3.3 Eliminar Disciplina
Opção 3.4 Nº de Alunos por Disciplina
Opção 3.5 Nº de Alunos por Turno
Menu 4 Alterar Disciplina Deve Pedir ao utilizador o código da disciplina a alterar e depois apresentar as seguintes opções:
Opção 4.1 Alterar Dados da Disciplina
Opção 4.2 Inserir Turno
Opção 4.3 Alterar Turno
Opção 4.4 Eliminar Turno
Opção 4.5 Voltar ao Menu Anterior
Menu 5 Listagens de Dados
Opção 5.1 Listagem de Alunos numa disciplina
Opção 5.2 Listagem de alunos num turno
Opção 5.3 Voltar ao menu anterior - voltar ao menu 3.
Código que tenho até agora:
Código:
variaveis - 01; 02; M1; M2; 03
ESCREVER ("M1");
LER(01)
CASO(01)
1: ESCREVER ("HORARIO DO ALUNO");
LER(H1);
CASO(H1)
ESCREVER ("INSIRA O Nº ALUNO:");
LER(N);
SE N<=X ENTÃO
<MOSTRAR DISCIPLINAS DO ALUNO>
SENÃO
1: MOSTRAR HORÁRIO ACTUAL
2: INSCRIÇÃO NA DISCIPLINA
3: ELIMINAR INSCRIÇÃO NA DISCIPLINA
4: INSCRIÇÃO NA TURMA
5: ELIMINAR INSCRIÇÃO NA TURMA
6: ELIMINAR HORARIO/ALUNO
[SENÃO: ESCREVER ("INSIRA Nº DE 1 A 6:")
Isto é o Pseudo Código.
Toda a ajuda é bem vinda