Quando o código não funciona, existem dois tipos bem diferentes de problema: erro de sintaxe, que impede o código de nem rodar, e erro de lógica, onde o código roda mas não faz o que deveria. Confundir os dois faz perder tempo procurando no lugar errado.
O que é erro de sintaxe
É quando o código desrespeita a gramática da linguagem — parêntese que falta fechar, ponto e vírgula esquecido, palavra-chave escrita errada. A linguagem não consegue nem interpretar o código, e geralmente aponta a linha exata do problema.
O que é erro de lógica
É quando o código roda sem reclamar, mas o resultado está errado — uma condição invertida, um cálculo com a fórmula errada, um loop que para cedo demais. Esse tipo de erro é mais difícil de achar porque não vem com mensagem clara apontando onde está o problema.
Como identificar cada tipo
- Erro de sintaxe: o programa nem chega a rodar, a linguagem acusa antes
- Erro de lógica: o programa roda, mas o resultado não é o esperado
- Erro de sintaxe geralmente aponta linha exata do problema
- Erro de lógica exige acompanhar o valor das variáveis passo a passo
Como resolver cada um na prática
Erro de sintaxe se resolve lendo a mensagem com atenção e corrigindo a linha indicada. Erro de lógica exige revisar o raciocínio por trás do código, muitas vezes imprimindo valores intermediários pra entender onde o comportamento sai do esperado.
Erros comuns ao lidar com isso
- Tentar corrigir erro de lógica como se fosse de sintaxe
- Ignorar a mensagem de erro de sintaxe achando que é complicado demais
- Não testar com dado simples antes de assumir que o código está certo