Questão de Programação — Java — FUNDATEC 2023
- Código
- qq896832
- Banca
- FUNDATEC
- Órgão
- PROCERGS
- Ano
- 2023
- Nível
- Superior
- Cargo
- ANC - Analista em Computação - Ênfase em Programação de Sistemas na Tecnologia Java
- A48
- B96
- C192
- D384
- E840
GabaritoE — 840
Gabarito: letra E (840). O laço executa exatamente duas iterações, modificando n a cada passo. O valor final de n é 840, como demonstrado passo a passo.
A questão testa a capacidade de rastrear alterações em variáveis dentro de um loop, especialmente quando a variável de controle usa o valor de n que está sendo modificado.
Inicialização: n = 4.
for (int i = n-1; i > 1; i--): i começa em 4-1 = 3.
1ª iteração (i = 3):
Corpo: n *= i + n → n = 4 * (3 + 4) = 4 * 7 = 28.
Decremento: i passa a 2.
Condição: 2 > 1 → verdadeiro, continua.
2ª iteração (i = 2):
Corpo: n *= i + n → n = 28 * (2 + 28) = 28 * 30 = 840.
Decremento: i passa a 1.
Condição: 1 > 1 → falso, loop termina.
Resultado final: n = 840.
O valor de n é atualizado dentro do laço, influenciando a expressão i + n em cada iteração. Um erro comum é usar o n inicial (4) em todas as iterações, o que levaria a: (4 * (3+4)=28, depois 28*(2+4)=168, etc.) – nenhum resultado coincide com as alternativas, mas a lógica correta é essencial.
Resultado de uma única iteração mal calculada ou uso de operação incorreta.
Possível confusão com a ordem das operações ou esquecimento de que n muda.
Provavelmente obtido ao usar n como 4 em ambas as iterações: 4(3+4)=28, depois 28(2+4)=168? Não dá 192. Outro erro.
Pode vir de 4(3+4)=28, depois 28(2+4)=168? Não. Ou tentativa de aplicar fatorial.
Valor obtido pelo rastreamento correto do laço.
Gabarito: letra E
Link permanente: /questoes/qq896832