FGV · DPE/MT · 2015 · Analista de Sistemas

Questão 79 · Informática: Programação e algoritmos

Analise a função a seguir, descrita em pseudocódigo. function f(n) begin if n <= 0 then return 1 else return n * f(n-2) end; O comando print f(10) exibe

  1. A) 0.
  2. B) 1.
  3. C) 80.
  4. D) 1920.
  5. E) 3840.

Marque a alternativa correta:

Gabarito: E

Gabarito definitivo divulgado pela banca FGV (DPE/MT 2015).

Comentário

Gabarito: E.

A função f(n) retorna 1 quando n é menor ou igual a 0; caso contrário, retorna n × f(n - 2). Para f(10), o cálculo desce de 2 em 2 até chegar a 0:

f(10) = 10 × f(8) = 10 × 8 × f(6) = 10 × 8 × 6 × f(4) = 10 × 8 × 6 × 4 × f(2) = 10 × 8 × 6 × 4 × 2 × f(0) = 10 × 8 × 6 × 4 × 2 × 1 = 3840

Por isso, a alternativa E é a correta.

Por que as outras estão erradas:

  • (A) 0 não é produzido: a função nunca multiplica por zero, pois os fatores são 10, 8, 6, 4 e 2.
  • (B) 1 é o valor do caso base, e não o resultado de f(10).
  • (C) 80 é o produto parcial 10 × 8, interrompido antes de chegar ao caso base.
  • (D) 1920 é o produto 10 × 8 × 6 × 4, que ainda não inclui o fator 2.

Dica: em funções recursivas, escreva as chamadas até o caso base e multiplique de volta.

Fundamentos: recursão em pseudocódigo · caso base de funções recursivas · multiplicação em cadeia

Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.

Fonte: prova FGV DPE/MT 2015 (Analista de Sistemas), questão 79, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.

Concursos abertos que cobram Informática

TCE/MA 2026 Analista, Auditor e TécnicoUNCISAL 2026 Professor do Magistério SuperiorPROCON/AL 2026 Analista e Fiscal de Defesa do Consumidor