Trabalho Prático II
Descrição do Programa
Programa que realiza as seguintes operações:
a) Leia o nome e as três notas de uma dada disciplina de cada estudante da turma;
b) Forme a pauta da semestral da disciplina contendo o nome do estudante, sua média e se
ele foi excluído, admitido ou dispensado;
c) Determine a menor e a maior nota da pauta de frequência;
d) Determine a quantidade de estudantes aprovados;
e) Determine a quantidade de estudantes reprovados;
f) Determine a quantidade de estudantes excluídos
Observações: Foi recomendado o uso de Procedimentos ou Funções no Código Fonte.
Funcionalidades do Programa
Ler o nome e as três notas de uma dada disciplina de cada estudante da turma;
Formar a pauta da semestral da disciplina contendo o nome do estudante, sua média
e se ele foi excluído, admitido ou dispensado;
Determinar a menor e a maior nota da pauta de frequência;
Determinar a quantidade de estudantes aprovados;
Determinar a quantidade de estudantes reprovados;
Determinar a quantidade de estudantes excluídos
Operação do Programa
Para operar o programa o utilizador deverá inserir a quantidade de estudantes da turma,
tendo em conta que o número máximo predefenido pelo programa é de 50 alunos. Após a
inserção da quantidade de alunos, o usuário poderá fazer as seguintes actividades:
Inserir o nome do aluno;
Colocar as Três notas para o cálculo da média de cada aluno;
Obter a situação para cada aluno (Excluido,Admitido ou ainda Dispensado);
Receber um relário geral da Pauta com os seguintes pontos: maior nota, menor nota,
numero de aprovados,reprovado e excluidos.
Para colocar o Tamanho da Turma: o usuário deverá digitar na quantidadde de
alunos, sem esquecer-se de que o programa tem limitação de até no máximo 50
alunos predefinidos no código fonte;
Para lançar as 3 notas para o cálculo da Média: após a inserção do nome do
aluno, o usuário poderá digitar as três nos para o posterior cálculo da Média do aluno
em causa;
Fase Final (Pauta da Disciplina): após ter se seguido os passos anteriores o
programa vai criar uma pauta com as seguintes os seguin tes itens: Nome, Média e a
Situação de cada aluno e entre outros itens para uma visão geral da Pauta da
Disciplina.
1
Principais instruções
Para o programa em anexo foram usados Procedimentos e estruturas condicionais.
Metodologia e Recursos usados:
Compilador da Linguagem Pascal;
Matérias dadas nas aulas teóricas sobre procedimentos;
Alguns Videos explicativos da internet;
Tabela de Participação
Membro Classificação Quantitativa Assinatura
Almirante Mungumbe 18
Arão Mucavele 18
Atia Juma 18
Manuel Melembe 18
Tiago júnior 18
2
Código-Fonte do Programa:
program PautaSemestral;
{Este Código permite realizar as seguintes funcoes:
a) Ler o nome e as três notas de uma dada disciplina de cada estudante da turma;
b) Formar a pauta da semestral da disciplina contendo o nome do estudante, sua
média e se ele foi
excluído, admitido ou dispensado;
c) Determinar a menor e a maior nota da pauta de frequência;
d) Determinar a quantidade de estudantes aprovados;
e) Determinar a quantidade de estudantes reprovados;
f) Determinar a quantidade de estudantes excluídos.}
type
Aluno = record
nome: string;
nota1, nota2, nota3: real;
media: real;
situacao: string;
end;
var
turma: array[1..50] of Aluno;
qtdeAlunos, i: integer;
menorNota, maiorNota: real;
qtdeAprovados, qtdeReprovados, qtdeExcluidos: integer;
procedure lerNotas(var a: Aluno);
begin
write('Digite o nome do aluno: ');
readln([Link]);
write('Digite a primeira nota: ');
readln(a.nota1);
write('Digite a segunda nota: ');
readln(a.nota2);
write('Digite a terceira nota: ');
readln(a.nota3);
end;
procedure calcularMedia(var a: Aluno);
begin
[Link] := (a.nota1 + a.nota2 + a.nota3) / 3;
end;
procedure definirSituacao(var a: Aluno);
begin
if ([Link] < 10) then
[Link] := 'Excluido'
else if ([Link] >= 14) then
3
[Link] := 'Dispensado'
else
[Link] := 'Admitido';
end;
begin
write('Digite a quantidade de alunos: ');
readln(qtdeAlunos);
menorNota := 10;
maiorNota := 0;
qtdeAprovados := 0;
qtdeReprovados := 0;
qtdeExcluidos := 0;
for i := 1 to qtdeAlunos do
begin
lerNotas(turma[i]);
calcularMedia(turma[i]);
definirSituacao(turma[i]);
if (turma[i].media < menorNota) then
menorNota := turma[i].media;
if (turma[i].media > maiorNota) then
maiorNota := turma[i].media;
if (turma[i].situacao = 'Admitido') then
qtdeAprovados := qtdeAprovados + 1
else if (turma[i].situacao = 'Excluido') then
qtdeExcluidos := qtdeExcluidos + 1
else
qtdeAprovados := qtdeAprovados + 1;
end;
// Impressão da pauta da disciplina
writeln(' Pauta da Disciplina ');
writeln(' -----------------------');
writeln('Nome: Média: Situacao:');
for i := 1 to qtdeAlunos do
begin
writeln(turma[i].nome, ' ', turma[i].medi[Link], ' ', turma[i].situacao);
end;
// Impressão dos resultados
writeln('Menor nota: ', menorNot[Link]);
writeln('Maior nota: ', maiorNot[Link]);
writeln('Quantidade de aprovados: ', qtdeAprovados);
writeln('Quantidade de reprovados: ', qtdeReprovados);
writeln('Quantidade de excluidos: ', qtdeExcluidos);
4
readln;
end.