Módulo 5 - Contas dentro do algoritmo
Ordem das operações: quem calcula primeiro quando a linha mistura contas
8 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 02/07/2026
O que você vai aprender
- Prever o resultado de expressões que misturam operadores.
- Aplicar a precedência: parênteses, depois * / div mod, depois + e -.
- Usar parênteses para impor a ordem que o problema pede.
- Encontrar o bug clássico da média sem parênteses.
Ouvir o resumo desta aula
Um recap de cerca de 2 minutos na voz do Valim, para ouvir no trânsito ou na academia.
Ler a transcrição do resumo
Resumo da aula: Ordem das operações: quem calcula primeiro quando a linha mistura contas.
Os objetivos desta aula. Prever o resultado de expressões que misturam operadores. Aplicar a precedência: parênteses, depois * / div mod, depois + e -. Usar parênteses para impor a ordem que o problema pede. Encontrar o bug clássico da média sem parênteses.
Veja o essencial, parte por parte.
A máquina não lê contas da esquerda para a direita. Quando a linha mistura operadores, a máquina segue a precedência, não a ordem de leitura.
Parênteses: a ordem que VOCÊ quer. A precedência é útil, mas o problema nem sempre concorda com ela.
Lendo expressões como a máquina lê. Parênteses redundantes não causam erro nenhum: (3 * 4) + 2 dá o mesmo que 3 * 4 + 2.
Esse foi o resumo do essencial. Para se aprofundar, leia a aula completa e responda os exercícios.
A máquina não lê contas da esquerda para a direita
Faça o teste clássico: quanto dá 2 + 3 * 4? Quem lê como texto, da esquerda para a direita, soma 2 com 3, multiplica por 4 e responde 20. A máquina responde 14. Ela varre a expressão inteira, resolve primeiro as operações de maior prioridade (a multiplicação: 3 * 4 dá 12) e só depois as de menor (a soma: 2 + 12 dá 14). Não é invenção da informática: é a mesma convenção da matemática da escola, que os professores resumiam como “multiplicação antes da soma”. O pseudocódigo apenas a leva a sério, sempre.
| Prioridade | O que resolve | Exemplo |
|---|---|---|
| 1ª (mais alta) | o que está entre parênteses | (2 + 3) * 4 resolve a soma primeiro |
| 2ª | *, /, div e mod | 2 + 3 * 4: o 3 * 4 sai na frente |
| 3ª (mais baixa) | + e - | sobra por último: 2 + 12 |
| Empate | esquerda para a direita | 20 - 8 + 3 faz 20 - 8 primeiro: dá 15 |
A tabela de precedência do pseudocódigo: três degraus e um critério de desempate.
Repare na última linha da tabela, porque ela derruba gente experiente: operadores de MESMA prioridade resolvem da esquerda para a direita. Em 20 - 8 + 3, a subtração acontece primeiro (dá 12) e depois a soma (dá 15). Quem resolve o 8 + 3 antes, por achar que soma vem primeiro, chega a 9 e erra. O mesmo vale para 100 / 10 * 2: da esquerda para a direita dá 10 * 2, ou seja, 20, e não 100 dividido por 20.
Parênteses: a ordem que VOCÊ quer
A precedência é útil, mas o problema nem sempre concorda com ela. A média de duas notas exige somar antes de dividir, e a precedência natural faz o contrário. É para isso que existem os parênteses: o que está dentro deles calcula primeiro, sem discussão. Compare as duas versões abaixo com as notas 8 e 6. A versão certa dá 7. A errada divide só a nota2 por 2 e soma com a nota1, entregando 11 de média, um número que nem existe na escala da escola.
nota1 <- 8
nota2 <- 6
media_certa <- (nota1 + nota2) / 2
// (8 + 6) / 2 = 14 / 2 = 7
media_errada <- nota1 + nota2 / 2
// 8 + (6 / 2) = 8 + 3 = 11
escreva(media_certa)
// a tela mostra: 7Um par de parênteses separa a média correta de um boletim absurdo.
🎮 Jogo da aula
O boletim impossível
Este algoritmo deveria mostrar a média de duas notas, mas alunos estão recebendo média maior que 10. Toque a linha com o bug.
Esse bug é um clássico de verdade: a expressão está quase certa, o programa roda sem travar e o erro só aparece no resultado, quando alguém desconfia da média 11. É o tipo de defeito silencioso que o computador literal do módulo 1 nunca vai apontar, porque ele fez exatamente o que a linha mandou. A lição de casa mental é sempre a mesma: ao escrever uma expressão mista, pergunte “em que ordem a máquina vai resolver isso?” antes de perguntar “a conta está certa?”.
Lendo expressões como a máquina lê
Fica a técnica para nunca mais errar: resolva a expressão em rodadas, riscando e substituindo. Rodada 1: calcule tudo o que está entre parênteses. Rodada 2: da esquerda para a direita, resolva as multiplicações, divisões, div e mod. Rodada 3: da esquerda para a direita, as somas e subtrações. Em (10 + 2) * 3 - 8 div 3, a rodada 1 transforma em 12 * 3 - 8 div 3; a rodada 2 transforma em 36 - 2; a rodada 3 entrega 34. Três rodadas, zero chute.
Teste rápido
Quanto vale a expressão 20 - 8 / 2 no pseudocódigo?
Perguntas frequentes
- A ordem das operações do pseudocódigo é a mesma da escola?
- É a mesma convenção: parênteses primeiro, depois multiplicação e divisão, depois soma e subtração. A diferença é de rigor. Uma pessoa percebe pelo contexto quando você quis outra ordem; a máquina segue a tabela sempre, sem exceção. Por isso os parênteses viram hábito de quem programa.
- div e mod têm a mesma prioridade da multiplicação?
- Sim, no pseudocódigo do curso div e mod ficam no mesmo degrau de * e /: acima de soma e subtração, resolvendo da esquerda para a direita em caso de empate. Em 10 + 7 mod 3, o mod sai primeiro (7 mod 3 dá 1) e o resultado é 11.
- Posso usar parênteses dentro de parênteses?
- Pode, e a regra continua uma só: o mais interno resolve primeiro. Em ((4 + 2) * 3) - 1, calcula-se 4 + 2, depois 6 * 3, depois 18 - 1. Se a expressão começa a parecer cebola de tantas camadas, o melhor conserto é quebrá-la em duas ou três linhas com variáveis intermediárias de nomes claros.
- Por que 100 / 10 * 2 não dá 5?
- Porque divisão e multiplicação têm a MESMA prioridade e resolvem da esquerda para a direita: 100 / 10 dá 10, e 10 * 2 dá 20. Para dividir 100 pelo produto 10 * 2, escreva 100 / (10 * 2). Esse é um dos erros mais comuns de leitura de expressão, em qualquer linguagem.
- Existe limite de operações numa mesma linha?
- Tecnicamente não, mas existe limite de legibilidade. Uma expressão com seis operadores e três pares de parênteses é convite a bug. A prática recomendada é a que o curso usa: quebrar o cálculo em passos nomeados (subtotal, taxa, total), porque cada linha simples é fácil de conferir num teste de mesa.
- Como eu treino precedência sem decorar a tabela?
- Use o método das rodadas desta aula em cinco expressões inventadas por você, conferindo no papel. A tabela tem só três degraus (parênteses; vezes e divisões; somas e subtrações), então duas sessões de treino bastam para virar reflexo. E lembre que o parênteses extra é sempre legal: na dúvida, escreva a ordem em vez de confiar na memória.
Fontes
Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.