Registro
Publicado por Leonardo 19/07/2007
[ Hits: 5.142 ]
Este programa faz o resgistro de até 35 alunos, recebe 5 notas de provas e faz a média das notas, imprime na tela o cadastro e a média.
O programa cadastra informacoes dos aluno (no maxino 35) exibe estes cadastros, Mostra o nome e RA dos alunos que tiveram notas maiores que 8, calcula a media das notas da turma} program registro; uses crt; {Biblioteca Padrao} {Definicao de tipos definidos pelo programador} type cadastro = record {declaracao de um tipo de dado complexo} Sigla: string [10]; Disciplina: string [40]; {Nome da Disciplina} data: record {Data Prova}{Declaracao de um tipo de dado complexo} dia: 1..31; mes: 1..12; ano: 1500..2500; end; {fim do registro data} Nome_aluno: string [50]; RA: longint; questao: array [1..5] of real; total: real; end; {fim do registro cadastro} var {Declaracoes de variaveis} cad: array [1..3] of cadastro; {vetor de cadastro} i,n,j: integer; {n quantidade de elementos, i,j sao indices dos vetors cad e questao respectivamente} media,soma:real;{media eh a media das notas da turma e soma o total das notas da prova} begin {Inicio do programa principal} clrscr; {Comando do Pascal que limpa a tela} writeln ('Escreva a quantidade de notas a serem lidas'); {Orientacao ao usuario} readln (n); {Le a quantidaade de elementos do vetor} writeln; {Comando que pula linha} {estrutura de repeticao que vai ler os dados} for i:=1 to n do begin with cad [i] do {Referencia ao campo} begin writeln ('Cadastro da ',i,'a. pessoa'); {Orientacao ao usuario} writeln; {Comando que pula linha} write ('Sigla = ' ); {Orientacao ao usuario} readln (sigla); {Le a Sigla} write ('Nome da Disciplina = '); {Orientacao ao usuario} readln (disciplina); {Le a o nome da Disciplina} with data do {Referencia ao campo} begin writeln ('Data da Prova'); {Orientacao ao usuario} write ('Dia = '); {Orientacao ao usuario} read (dia); {Le o dia da prova} write ('Mes = '); {Orientacao ao usuario} read (mes); {Le o mes da prova} write ('Ano = '); {Orientacao ao usuario} readln (ano); {Le o ano da prova} end; {Fim da entrada de dados do reg. data} write ('Nome do Aluno = '); {Orientacao ao usuario} read (nome_aluno); {Le o nome do aluno} write ('RA = '); {Orientacao ao usuario} read (RA); {Le o RA} writeln ('Nota das Questoes'); {Orientacao ao usuario} total:=0; {Atribuicao do valor inicial do total} {Estrutura de repeticao que vai ler as notas obtidas em cada questao e calcular o total} for j:=1 to 5 do begin write ( j, ')'); {Orientacao ao usuario} readln (questao [j]); {Le a nota de cada questao} total:= total+questao[j] {Calcula a nota da prova} end; {Fim do comando for} end; {Fim de entrada de dados do reg. cad[i]} writeln; {Comando que pula linha} end; {Fim do comando for} writeln ('Aluno que obtiveram notas maior que 8'); {Orientacao ao usuario} {Estrutura de repeticao que vai verificar quais alunos obtiveram nota maior que 8 e exibir estes dados} for i:=1 to n do with cad [i] do {Referencia ao campo} begin If total > 8 then {Compara os alunos que tiveram notas maiores que 8} begin writeln ('Nome = ',nome_aluno); {Escreve os nomes dos alunos que tiveram notas maiores que 8} writeln ('RA = ', ra); {Escreve o RA dos alunos que tiveram notas maiores que 8} end; {Fim do comando IF} end;{Fim de entrada de dados do reg cad[i]} {Estrutura de repeticao que vai somar todas as notas da prova obtidas pela turma} for i:=1 to n do soma:= cad[i].total + soma; media:= soma/5; {Calcula a media das notas da prova da turma} writeln; {Comando que pula linha} {Estrutura de repeticao que escreve os dados cadastrados} for i:=1 to n do begin with cad [i] do {Referencia ao campo} begin writeln ('Cadastro da ',i,'a. pessoa'); {Orientacao ao usuario} writeln ('Sigla = ', sigla); {Escreve a Sigla} writeln ('Nome da Disciplina = ',disciplina); {Escreve o nome da discplina} with data do {Referencia por campo} begin writeln ('Data da Prova = ',dia,' / ',mes, ' / ', ano); end; {Fim da entrada de dados do reg. data} writeln ('Nome do Aluno = ', nome_aluno); {Escreve o nome do aluno} writeln ('RA = ', RA); {Escreve o RA} writeln ('Nota das Questoes'); {Orientacao ao usuario} {Estrutura de repeticao que vai escrever a nota de cada questao} for j:=1 to 5 do writeln (j,'.a questÆo = ', questao[j]:5:2); writeln ('Total = ', total:5:2); {Escreve a nota da prova} writeln;{Comando que pula linha} end; {Fim da entrada de dados do reg.cad[i]} end; {Fim do comando for} writeln;{Comando que pula linha} writeln ('A media das Notas = ', media:5:2); {Escreve a media das notas da turma} readkey; {Comando do Pascal que espera o usuario digitar qualquer tecla para finalizar o programa} end. {Fim do programa principal}
Editor de texto em Pascal/Lazarus
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
Não consigo instalar linux mint [RESOLVIDO] (8)
Melhorando a precisão de valores flutuantes em python[AJUDA] (14)
Instalação Uefi com o instalador clássico do Mageia [RESOLVIDO] (2)