Registro
Publicado por Leonardo 19/07/2007
[ Hits: 5.127 ]
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}
validando um triângulo e classificando-o como equilátero, isoceles ou escaleno.
Exemplo de for que mostra 6 números em ordem crescente
Nenhum comentário foi encontrado.
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
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Ubuntu 24.04 e problemas de acesso à rede VPN [RESOLVIDO] (9)
big linux sem audio como resolver (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta