Informática, perguntado por polianamelo83, 1 ano atrás

(EM PASCAL )Faça um programa que receba o nome (texto), o sobrenome (texto), o cpf (inteiro), a idade (inteiro) e as três notas (array de reais) de 15 alunos. Em seguida, apresente (10 pontos):
a) O nome do aluno mais velho,
b) A média aritmética de cada aluno,
c) O nome completo (nome e sobrenome) de todos os alunos menores de 18 anos.

Soluções para a tarefa

Respondido por bokomoko
1
Eis o programa

//(EM PASCAL )Faça um programa que receba o 
//nome (texto), 
//o sobrenome (texto), 
//o cpf (inteiro), 
//a idade (inteiro) 
//e as três notas (array de reais) 
//de 15 alunos. Em seguida, apresente (10 pontos):
//a) O nome do aluno mais velho,
//b) A média aritmética de cada aluno,
//c) O nome completo (nome e sobrenome) de todos os alunos menores de
// 18 anos.
//  
program alunos;

type aluno = record 
     nome, sobrenome : string;
     cpf,idade : integer;
     notas : array[1..3] of real;
     media : real
end;

var
turma : array[1..15] of aluno ;
menores : array[1..15] of aluno;
i,j, wmais_velho,quantos_menores : integer;
wnome_mais_velho : string;
wsoma : real;

begin
    wmais_velho := -999;
    quantos_menores :=0 ;
    for i := 1 to 3 do
       with turma[i] do begin
          writeln();
          write('Informe o nome do aluno ',i) ;
          readln(nome);
          write('Informe o sobrenome do aluno ',i) ;
          readln(sobrenome);
          write('Informe o cpf do aluno ',i) ;
          readln(cpf);
          write('Informe a idade do aluno ',i) ;
          readln(idade);
          wsoma :=0;
          for j:= 1 to 3 do begin
              write('Informe a nota ',j);
              readln(notas[j]);
              wsoma := wsoma + notas[j];
          end;
          media := wsoma / 3;
          if idade > wmais_velho then begin
              wnome_mais_velho := nome;
              wmais_velho := idade;
          end;
          if idade < 18 then begin
              quantos_menores := quantos_menores +1 ;
              menores[quantos_menores] := turma[i];
          end;
       end; // with 
    writeln();
    writeln('O aluno mais velho é ', wnome_mais_velho ,
                     ' com ',wmais_velho:3,' anos');
    writeln();
    writeln('Eis as médias de cada aluno');
    for i:=1 to 15 do 
        with turma[i] do 
            writeln('O aluno ',nome,' ', sobrenome,  ' teve média ',media:4:2);
    writeln();
    writeln('Eis os alunos menores de 18 anos' );
    for i:=1 to quantos_menores do 
        with menores[i] do 
            writeln('O aluno ',nome,' ', sobrenome,  ' tem apenas ',idade:2);
end.

pode rodá-lo aqui
http://rextester.com/HDCUX33374

Perguntas interessantes