Você está na página 1de 4

var nota : array[1..

50] of real; maior, menor : real; i : integer; begin writeln('Digite os 50 valores:'); for i:= 1 to 50 do read(nota[i]); maior := nota[1]; for i:= 2 to 50 do if nota[i] > maior then maior := nota[i]; writeln('Maior: ',maior); menor := nota[1]; for i:= 2 to 50 do if menor > nota[i] then menor := nota[i]; writeln('Maior: ',menor); writeln('Valores lidos'); for i:= 1 to 50 do writeln('valor [',i,'] = '.nota[i]); end.

S no entendi o que significa o array em variveis. Obrigado! 04-09-2006 por Felipe Fontes nossa pra isso no precisa usar array nem tantos loops... basta vc ir verificando a cada iterao quem o maior e quem o menor... quanto a mdia vc faz o seguinte usa uma variavel para quardar a soma de todos os valores e usa outra pra guardar quantos valores foram usados (um contador) no final divide o somatorio pelo contador... tipo isso aki: Cdigo:
var maior, menor, media, num, cont:real; op:char; begin cont:=0; repeat Writeln('Entre com um nmero'); readln(num);

if cont=0 then begin {est na primeira iterao} maior:=num; menor:=num; end; if num>maior then maior:=num; if num<menor then menor:=num; media:=media+num; {soma se todos os valores para depois dividir pelo contador e dar a media} cont:=cont+1; writeln('Deseja entrar com mais numeros? (S/N)'); op:=UPCASE(readkey); until op='N'; media:=media/cont; writeln('maior ',maior:0:2,' menor ',menor:0:2,' media ',media:0:2); end.

se vc quiser s 10 valores basta trocar o "repeat until" por um "for" e fazer as adaptaes nescessrias :wink: 04-09-2006 por ZIN Felipe Fontes no est dando certo. Eu tenho de entrar com 10 valores, imprimir o maior destes 10 e o menor dos 10 nmeros digitados. Depois tenho de por a mdia. Obrigado! 04-09-2006 por gto Cdigo:
program Menor_e_Media; var i, menor, media, atual: integer; begin menor := 99999999; media := 0; for i := 1 to 10 do begin WriteLn('Entre com um nmero'); ReadLn(atual); if atual < menor then menor := atual; media := media + atual; end; media := media div i; WriteLn('Menor Nmero ' + menor); WriteLn('Mdia ' + media); end.

Soluo podre que ensinavamna escola. Funciona e contenta o professor heheh S ali nos ltimos WriteLn faltaria um esquema pra converter integer em string. 04-09-2006 por ZIN gto obrigado funcionou. Abraos! 04-09-2006 por Felipe Fontes

Citao: Postado Originalmente por ZIN Felipe Fontes no est dando certo. Eu tenho de entrar com 10 valores, imprimir o maior destes 10 e o menor d... eu fiz diferente do que vc pediu justamente para vc entender o codigo e adaptar para a sua necessidade... se eu te desse o codigo pronto vc no ia aprender, como aconteceu com outro companheiro... analize os dois cdigos e vc ver que no fundo eles so iguais (com a vantagem do meu usar variaveis reais e no inteiras e ainda no usar um pseudo menor). se vc tivesse analizado o meu codigo e entendido vc chegaria ao codigo no final por si s. :wink: no fim se vc tivesse entendido o meu codigo vc chegaria a essa adaptao: Cdigo:
Program mamemed; uses wincrt; var maior, menor, media, num:real; cont:integer; begin for cont:=1 to 10 do begin Writeln('Entre com o ',cont,' nmero.'); readln(num); if cont=1 then begin {est na primeira iterao} maior:=num; menor:=num; end; if num>maior then maior:=num; if num<menor then menor:=num; media:=media+num; {soma se todos os valores para depois dividir pelo contador e dar a media} clrscr; end; media:=media/10; writeln('maior ',maior:0:2,' menor ',menor:0:2,' media ',media:0:2); end.

04-09-2006 por gto Citao: Postado Originalmente por Felipe Fontes eu fiz diferente do que vc pediu justamente para vc entender o codigo e adaptar para a sua necessidade... se eu te... Concordo plenamente! Eu postei um texto aqui uma vez, explicando "A saga dos alunos bastardos". Nunca mais consgui achar, mas falava extamente disso. Sobre o fato, desisti de ajudar pra valer, quando tudo o que querem um copy & paste, tudo o que dou.

04-09-2006 por jqueiroz Citao: quando tudo o que querem um copy & paste, tudo o que dou. Pois eu no dou nem isso. Minha repostas, nesses casos, "Posta a o que voc j fez". E nunca dou o programa pronto: no mximo discuto o que a pessoa tem que fazer, e coloco alguns trechos mais complicados. Infelizmente no todo mundo que percebe, que assim, aprende mais do que no "copy&paste". 05-09-2006 por ZIN jqueiroz claro tanto que vale a pena a pessoa aprender, tanto que depois disso no conseguiria, vendo como o amigo fez para mim eu consegui bolar outros que entrando com 3 valores eu consiga diferenciar o menor, medio e maior. O pascal pode ser um pouco complicado, porque geralmente pensamos que no seria capaz de gerar ou criar algo em um comando to simples, acho que por ser tudo em ingls. Abraos e no sou do membro chupim, tenho 3500 mensagens em um suporte que ajuda aos outros usurios e tenho a mesma ideologia, s pascal estou me ferando. 05-09-2006 por Felipe Fontes Citao: Postado Originalmente por ZIN jqueiroz claro tanto que vale a pena a pessoa aprender, tanto que depois disso no conseguiria, vendo como o a... pascal super simples... se vc est tendo dificuldades mais um motivo para vc meter a mo na massa e tentar fazer sozinho... se no estiver conseguindo abra um tpico explicando o que vc queria fazer e ponha o codigo que vc fez... assim a galera vai te explicar o que vc est fazendo de errado e mostrar o caminho certo...

quando eu postei nesse tpico a primeira vez, eu ia deixar s a parte escrita, sem o codigo... mas me pareceu confuso o que eu escrevi, ento eu botei o codigo. S que no exatamente como vc queria, exatamente para forar vc a entender e modific-lo... :roll: 16-03-2009 por jadield2 tow aprendendo pra caramba com vc's akiii huahau primeiro semestre em redes de computadores! vlw ah essa tbm era uma dvida minha!

Você também pode gostar