Ela é tão fera, que é professora tanto de Português e Inglês.
Mas ela tem uma turma muito grande, e dá muito trabalho ficar somando e dividindo por 2 as notas de todo mundo, pois geralmente fica número quebrado no meio além dela não gostar muito de usar calculadora.
Vamos ajudar sua tia?
Crie um script que pede a nota de Português e a de Inglês, e forneça a média das duas notas.
| Sua tia. Sim, sua tia toca baixo, qual o problema ? |
Calculando Média em Python
Vamos criar a variável 'port', para a notar de Português e armazenar um número float nela, através das funções float() e input().Depois, fazemos o mesmo para a variável 'ing', de Inglês.
Por fim, somamos as duas e dividimos por 2. O resultado dessa operação, armazenamos na variável 'media' e simplesmente damos um print mostrando a média.
Digite e teste o código abaixo:
# Pedindo as notas port = float( input("Digite a nota de Português, tia: ") ) ing = float( input("Tia, agora a de Inglês: ") ) # Cálculo da média media = port + ing / 2 print("A média desse estudante foi: ",media)
Vamos ver o resultado dando uma nota 8 e uma 10 (logo a média deve dar 9):
Peraí!!!!! Média 13 ???
O que foi isso que aconteceu? Que tiro foi esse, viado ???
Calma, por incrível que pareça, este resultado está correto.
Sim, correto. Mas do ponto de vista do Python. Do seu, que quer calcular uma média, tá errado...e o grande culpado dessa confusão é um sujeito chamado "Precedência de operadores".
![]() |
| Sua tia ficou chateada com o bug no seu programa |
Precedência de operadores em Python
Quanto dá: 1 + 1 * 2 ?Alguém pode pensar: 1 + 1 * 2 = 1 + 2 = 3
Outro pode fazer: 1 + 1 * 2 = 2 * 2 = 4
E aí, qual o certo?
Pra não haver essa confusão, o Python tem uma regra, sobre qual operação fazer primeiro.
Na ordem de importância, maior pra menor:
- Exponenciação: **
- Multiplicação, divisão e resto da divisão: * / %
- Adição e subtração: + -
Tem exponenciação? Não, ok.
Tem multiplicação, divisão ou resto da divisão? Sim, tem multiplicação. Então multiplica primeiro 1 * 2 = 2
Só depois faz a soma: 1 + 2 = 3
Tanto na regras 2 como na 3, todos os operadores tem a mesma precedência, então você vai resolvendo eles da esquerda para a direita. Ou seja, se tiver uma soma e uma subtração, faça o que aparece primeiro, pois esses dois sinais tem iguais precedência.
Parêntesis pra evitar confusão
Vamos rever nosso código da média:media = port + ing / 2
Huuum! Taí o erro! Primeiro ocorre a divisão da nota de inglês por 2.
Mas, na verdade, a gente queria que a soma ocorresse antes, só depois divide tudo por 2.
Uma maneira de resolver isso é simplesmente colocando parêntesis, pra deixar bem claro o que deve ser feito.
Assim, o correto seria:
# Pedindo as notas port = float( input("Digite a nota de Português, tia: ") ) ing = float( input("Tia, agora a de Inglês: ") ) # Cálculo da média media = (port + ing) / 2 print("A média desse estudante foi: ",media)
Aaaaaagora sim! Vai dar direitinho!
![]() |
| Agora sua tia ficou feliz! |
O motivo disso funcionar é bem simples: os parêntesis tem precedência maior que os operadores matemáticos, além de nos ajudar a deixar o código mais legível e organizado.
Se suas contas ficarem muito grandes ou confusas, use sempre os parêntesis, para deixar bem claro os cálculos que você deseja fazer.
Exercício: Média e Precedência
Devido a crise que está ocorrendo no Brasil, demitiram o professor de Matemática.E adivinhe para quem sobrou? Claro, pra sua tia.
Agora ela vai dar aula de Matemática também.
Faça um programa em Python que receba as notas de Português, Inglês e Matemática de um aluno, e em seguida forneça a média aritmética dessas notas.
Não se esqueça de usar parêntesis no cálculo da média, para não ter problemas de precedência de operadores.
Digite o código no seu script nos comentários.
![]() |
| Cara da sua tia quando você disser que é profissional Python e não trabalha mais de graça! Vai ter que pagar tia, preciso custear minha mansão e minha BMW adora que sou programador Python |
Desafio de Python - Média Ponderada
A prova do vestibular do IME (Instituto Militar de Engenharia), é composta pelas provas de Matemática, Física, Química, Português e Inglês apenas. Porém, elas tem pesos diferentes. O peso de Matemática é 3, de Física é 2.5, de Química também é 2.5, Português tem peso 1 e Inglês também tem peso 1.
Crie um programa em Python que peça as 5 notas para o usuário e calcule sua média final.
Se não souber o que é uma média ponderada, pesquise no Google e tente aprender sozinho (skill fundamental para qualquer programador, treine isso)





