Pessoal, por favor me ajudem. Criei esse programa para relatar qual o número é menor e qual o maior, mas até agora só o maior está funcionando, enquanto o menor só me mostra o número zero. Tem como alguém analisar e explicar o meu erro?
Var
cont: inteiro
pre, maior, menor: real
Inicio
cont <- 0
Enquanto (cont <= 8) faca
Escreva ("Digite o preço: ")
Leia (pre)
Se (pre > maior) entao
maior <- pre
Senao
Se (pre < menor)
menor <- pre
FimSe
cont <- cont + 1
FimEnquanto
Escreval ("O maior número é o ", maior)
Escreval ("O menor número é o ", menor)
Var
cont: inteiro
pre, maior, menor: real
Inicio
cont <- 0
Enquanto (cont <= 8) faca
Escreva ("Digite o preço: ")
Leia (pre)
Se (cont = 0.0)
menor <- pre
FimSe
Se (pre > maior) entao
maior <- pre
Senao
Se (pre < menor)
menor <- pre
FimSe
cont <- cont + 1
FimEnquanto
Escreval ("O maior número é o ", maior)
Escreval ("O menor número é o ", menor)
Obs.: não sei se a sintaxe tá correta, nunca usei essa linguagem antes.
Só explicando a correção:
Como eu tinha falado antes, a variável menor estava sendo inicializada como 0.0. (É o valor padrão)
No “se” você checava se “pre” é menor que a variável “menor”, porém os únicos números menores que 0 são os negativos (e você com certeza não estava digitando negativos).
O que eu fiz?
Na primeira vez (apenas) que o usuário digita, eu atribui esse valor à variável menor, para usar algo diferente do valor padrão (0.0) e para comparar apenas com números que o usuário digitou.