Um algoritmo é desenvolvido para receber dados, realizar o processamento deles e gerar uma resposta. Os algoritmos podem conter erros de lógica e erros de sintaxe, ou seja, erros de lógica são erros que não produzem o resultado esperado e erros de sintaxe são erros que não permitem que o algoritmo seja executado.
O algoritmo a seguir apresenta um ERRO. Qual seria esse erro?
var n1, n2, n3, m: real
inicio
leia (n1, n2, n3)
m <- n1+ n2+ n3/ 3
escreval(m)
fimalgoritmo
a. Faltou a mensagem para a digitação das notas.
b. O cálculo da média está incorreto, pois, de acordo com as prioridades de execução entre os operadores matemáticos, faltaram parênteses na soma das notas.
c. O comando escreval está incompleto, mostrando apenas uma mensagem.
d. Alguma variável não foi declarada.
e. O comando escreval está incompleto, mostrando apenas a variável m.
Soluções para a tarefa
A alternativa correta é a alternativa
b) O cálculo da média está incorreto, pois, de acordo com as prioridades de execução entre os operadores matemáticos, faltaram parênteses na soma das notas.
m <- n1 + n2 + n3/ 3 equivale a m <- n1 + n2 + (n3/ 3)
Para corrigir o programa, é necessário trocar
m <- n1 + n2 + n3/ 3
Por
m <- (n1 + n2 + n3) / 3
A falta de uma mensagem para digitar as notas é um "defeito de usabilidade" (o que não é recomendado), mas não é um erro. Vários programas evitam ser "verbosos" como, por exemplo, os programas da linha de comando do linux.
As demais alternativas apresentam problemas que não existem neste código.
Resposta:
a. O cálculo da média está incorreto, pois, de acordo com as prioridades de execução entre os operadores matemáticos, faltaram parênteses na soma das notas.
Explicação: