Questão de Algoritmos e Estrutura de Dados — Algoritmos — IUDS 2021
- Código
- qq664116
- Banca
- IUDS
- Órgão
- IF-RJ
- Ano
- 2021
- Nível
- Superior
- Cargo
- Analista de Tecnologia da Informação
- AComparações.
- BFunções.
- C*
- D<=
GabaritoC — *
Gabarito: letra C. O operador de multiplicação (*) possui maior precedência que os operadores relacionais (<=) e comparações, sendo executado antes deles em qualquer expressão que siga a ordem padrão de precedência.
A ordem comum de precedência em algoritmos e linguagens de programação é: (1) operadores unários e chamadas de função, (2) exponenciação, (3) multiplicação e divisão, (4) adição e subtração, (5) operadores relacionais (como <, >, <=, >=, ==, !=), (6) operadores lógicos. Assim, entre as alternativas, o * (multiplicação) ocupa o terceiro nível, enquanto <= e comparações estão no quinto. Funções (chamadas de função) frequentemente estão no nível mais alto, mas a banca considerou * como a resposta correta, possivelmente por entender que a pergunta se restringe a operadores infixos comuns da aritmética e relacionais.
Comparações (como ==, !=, <, >) são operadores relacionais e possuem precedência inferior à dos operadores aritméticos como *. Em nenhuma tabela de precedência padrão as comparações vêm antes da multiplicação.
Embora chamadas de função (por exemplo, f(x)) tenham a maior precedência em muitas linguagens, a questão não as considera como uma categoria que supere * neste contexto. O gabarito aponta *, indicando que, entre as opções, a multiplicação é a de maior prioridade.
O operador * (multiplicação) é um operador aritmético de alta precedência, executado antes de operadores relacionais. Em qualquer expressão que combine esses operadores, a multiplicação é resolvida primeiro.
O operador <= é relacional, com precedência inferior à dos operadores aritméticos. Não pode ser o de maior prioridade.
Para memorizar a ordem de precedência, use a sigla PEMDAS (Parênteses, Expoentes, Multiplicação/Divisão, Adição/Subtração) e lembre-se de que relacionais e lógicos vêm depois. Em questões de algoritmo, fique atento ao que a banca considera como operador — funções podem ou não ser incluídas na hierarquia.
Gabarito: letra C — o operador * tem a maior precedência entre as alternativas listadas.
Link permanente: /questoes/qq664116