Olá, seguem resultados do exercício com base nos códigos sugeridos. Tentei utilizar a fórmula round para arrendondar a nota, mas não deu muito certo, podem me ajudar?
Olá, seguem resultados do exercício com base nos códigos sugeridos. Tentei utilizar a fórmula round para arrendondar a nota, mas não deu muito certo, podem me ajudar?
Olá, Estudante. Como vai?
O seu código está muito bem estruturado e as variáveis foram declaradas perfeitamente! A saída textual com a interpolação usando %s e %d funcionou de forma impecável no console.
Sobre a sua dúvida com a função round(): olhando para o seu resultado, ela funcionou exatamente como deveria, mas o motivo de parecer que "não deu muito certo" está no valor inicial da própria média que você escolheu.
Vou te explicar o que aconteceu e como você pode testar o real poder do round() e das formatações de print:
Na linha de código, você definiu:
media_aluno = 8.45
media_aluno = round(media_aluno, 2)
O número 2 dentro dos parênteses do round(media_aluno, 2) diz ao Python: "Quero arredondar este número para que ele fique com duas casas decimais após o ponto".
Como o seu valor inicial (8.45) já tinha exatamente duas casas decimais, o Python não precisou cortar nem alterar nada, mantendo o valor idêntico.
Para ver a mágica do round() acontecer, experimente alterar o valor da média para um número com três ou mais casas decimais. Veja estes dois exemplos:
media_aluno = 8.456 e rodar o round(media_aluno, 2), o Python vai arredondar para cima e exibir: 8.46.media_aluno = 8.45
media_aluno = round(media_aluno, 1)
print(media_aluno) # Vai exibir: 8.5
print()Como você está estudando justamente as formatações do print(), sabia que é possível arredondar e limitar as casas decimais de um número flutuante (float) direto na linha de exibição, sem nem precisar usar a função round() antes?
Utilizando o padrão clássico que você já aplicou no nome e na idade, basta usar o marcador %f adicionando um ponto e a quantidade de casas desejadas entre o % e a letra f. Veja que prático:
media_aluno = 8.4567
# O %.2f limita a exibição para 2 casas decimais automaticamente
print('A média do %s é %.2f' % (nome_aluno, media_aluno))
Saída no console: A média do Fabricio Daniel é 8.46
Seu progresso manipulando strings e tipos numéricos está excelente. Faça esses testes com mais casas decimais nas variáveis e veja o console se comportar de formas diferentes!
Espero que possa ter lhe ajudado!