Um exemplo de aplicações prática do tipo registro.
Esse exemplo lê o nome e as 4 notas de 8 alunos. Ordena em crescente pelo o nome e exibe um a um.

		program LEITURA_ORDENACaO_ESCRITA;
		type
		    bimestre = array[1..4] of real;
		    cad_aluno= record
		        nome: string;
		        nota: bimestre;
		end;

		var
		    aluno: array[1..8] of cad_aluno;
		    i, j, atual, proximo: byte;
		    x: cad_aluno;
		BEGIN
		    {Rotima de entrada de dados}
		    writeln('CADASTRO DE ALUNOS');
		    writeln;
		    for j:= 1 to 8 do Begin
		        write('Informe o nome do ', j:2, 'o. aluno   :');  readln(aluno[j].nome);
		        writeln;
		        for i:=1 to 4 do Begin
		            write(' Informe a ', i:2, 'a. nota   :'); readln(aluno[j].nota[i]);
		        end;
		        writeln;
		    end;
		    writeln;

		    {Rotina de ordenação}
		    for atual:=1 to 7 do Begin
		        for proximo:= atual+1 to 8 do Begin
		            if (aluno[atual].nome > aluno[proximo].nome) then Begin
		                x:= aluno[atual];
		                aluno[atual] := aluno[proximo];
		                aluno[proximo] := x;
		            end;
		        end;
		    end;

		    {Rotina de saída  }
		    writeln;
		    for j:= 1 to 8 do Begin
		        writeln('Nome aluno: ', j:2, '  :  ', aluno[j].nome);
		        writeln;
		        for i:= 1 to 4 do Begin
		            writeln('Nota ', i, '  :  ', aluno[j].nota[i]:5:2);
		        end;
		        Writeln;
		        writeln('Tecle  para ver o proximo: '); readln;
		    end;
		    writeln;
		        writeln('Tecle  para encerrar: '); readln;
		END.
Este artigo foi útil ?
SimNão

7 Replies to “[pascal] Tipo Registro / type record”

  1. Marcos disse:

    o texto está cortado….

  2. Eduardo disse:

    O texto continua cortado… (2 anos e 1 mês depois…) ¬¬’

  3. srabates disse:

    o.o’ o gente, é so copiar o texto todo e colar no bloco de notas, ou em qualquer lugar. oooo

  4. iwonderwhyy disse:

    Brigado Pelo informação 😀

  5. Manoel disse:

    Mas seja como for n rodou.

  6. Manoel disse:

    Rodou sim, so mudando a variavel byte por integer!

  7. Eliana Jesus de Brito disse:

    Sou estudante do segundo semestre de sistemas para internet, estou vendo em sala de aula estrutura de dados com Pascal. Quando a questao dada requer calculos, sinto dificuldades.Tambem na ordenacao.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Close Search Window