Escreva um algoritmo que leia o nome dos alunos de uma turma de tamanho indefinido (mas não
superior a 60) e sua nota em uma prova (0 a 10; o algoritmo deve verificar se a nota fornecida é
válida). O algoritmo pára de ler quando o nome do aluno fornecido for vazio (""). Para cada aluno,
o algoritmo deve escrever seu nome e sua nota normalizada, dada pela fórmula:
NNi = Ni X 10/Nmax (5.5)
Onde NNi é a nota normalizada do i-ésimo aluno, Ni é sua nota original, e Nmax é a nota máxima obtida dentre todos os alunos da turma.
algoritmo "Calcula Média"
// Função :
// Autor :
// Data : 08/11/2010
// Seção de Declarações
var
nome: vetor[1..60] de literal
nota: vetor[1..60] de real
notaNormalizada: vetor[1..60] de real
notaMaxima:real
i,cont, contMedia,contNotasNomes:inteiro
inicio
// Seção de Comandos
i<-0
repita
i<-i+1
escreva("Digite o nome do aluno")
leia(nome[i])
se(nome[i] <> "") entao
escreva("Digite a nota do aluno")
leia(nota[i])
se(nota[i]<0)entao
escreva("Nota inválida")
escreva("Digite a nota do aluno")
leia(nota[i])
senao
fimse
fimse
ate ((i=60) ou (nome[i]=""))
notaMaxima <- nota[1]
para cont de 2 ate i-1 faca
se(notaMaxima < nota[cont]) entao
notaMaxima<- nota[cont]
fimse
fimpara
para contMedia de 1 ate i-1 faca
notaNormalizada[contMedia]<-(nota[contMedia] * 10 )/ notaMaxima
fimpara
para contNotasNomes de 1 ate i-1 faca
escreval(nome[contNotasNomes] ,notaNormalizada[contNotasNomes])
fimpara
fimalgoritmo
0 comentários:
Postar um comentário