receba 5 números(notas) entre 0 e 10 e mostre maior e menor valor, e média Python
URGENTE me ajuda por favor
Respostas
O código abaixo não apresenta uma validação de dados ou tratamento de erros/exceções, ou seja, espera-se que o usuário utilize-o corretamente.
Obs.: Os pontos que precedem as linhas não fazem parte do código, estão aí para garantir a indentação.
acumulador=0
for c in range(0,5):
.....nota=float(input(f'Digite a {c+1}ª nota: '))
.....if c==0:
..........menorNota=nota
..........maiorNota=nota
.....elif nota>maiorNota:
..........maiorNota=nota
.....elif nota<menorNota:
..........menorNota=nota
.....acumulador+=nota
print(f'Das notas digitadas, a maior foi {maiorNota} e a menor, {menorNota}')
print(f'A media das notas ficou em {acumulador/5:.2f}')
Comentarios:
--> Temos 4 variáveis no código, "acumulador", que utilizamos para guardar a soma das notas, "menorNota" e "maiorNota", nas quais guardamos o valor da menor nota e maior nota e "nota", que utilizamos para guardar a nota (float) digitada pelo usuário.
--> Utilizamos um laço for para leitura das 5 notas.
--> Dentro do laço, utilizamos uma estrutura condicional para definir qual é a maior e qual é a menor nota. Quando digitamos a primeira nota (c=0), esta será a menor e a maior nota. Caso não seja a primeira nota digitada, testamos se a nota digitada é maior que o valor guardado em maiorNota ou se é menor que o valor guardado em menorNota para atualizar o valor nestas variáveis.
--> No fim, mostramos ao usuário os valores solicitados.
--> O código "reutiliza" a variável nota e, portanto, os valores individuais não mantidos.
Como qualquer outro código, não é único ou a melhor opção ou o mais compacto. Poderíamos, por exemplo, ter utilizado uma lista, mas não ficou claro se era permitido nesta tarefa.