GeraProva GeraProva Provas com IA para professores do Brasil
Computação5º anoBNCC EF15CO02Média⏱ medio

Identifique a função recursiva que calcula o fatorial de um número n. Qual é a saída de fatorial(5)?

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF15CO02

Construir e simular algoritmos, de forma independente ou em colaboração, que resolvam problemas simples e do cotidiano com uso de sequências, seleções condicionais e repetições de instruções.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Identifique a função recursiva que calcula o fatorial de um número n. Qual é a saída de fatorial(5)?

  1. A) 120
  2. B) 24
  3. C) 60
  4. D) 100
  5. E) 10

✅ Resposta correta: alternativa A

Resolução passo a passo

  1. Resolvi sem olhar o gabarito. Pela definição recursiva do fatorial, fatorial(0) = 1 e, para n maior que 0, fatorial(n) = n * fatorial(n - 1). Passo 2: Aplicando a regra a n = 5: fatorial(5) = 5 * fatorial(4); fatorial(4) = 4 * fatorial(3); fatorial(3) = 3 * fatorial(2); fatorial(2) = 2 * fatorial(1); fatorial(1) = 1 * fatorial(0); fatorial(0) = 1. Passo 3: Substituindo de volta: fatorial(1) = 1, fatorial(2) = 2, fatorial(3) = 6, fatorial(4) = 24 e fatorial(5) = 5 * 24 = 120. Passo 4: A alternativa correta é a A (120), que coincide com o gabarito oficial. Passo 5: Por que as outras estão erradas: a B (24) é o valor de 4!, ou seja, o cálculo para no número anterior; a C (60) corresponde a 5 * 4 * 3, faltando multiplicar por 2 e por 1; a D (100) não é resultado de nenhuma etapa da recursão correta; a E (10) é a soma de 1 + 2 + 3 + 4, que confunde produto com soma. Passo 6: A questão pede a identificação da função recursiva, mas as alternativas trazem apenas o valor final; a resposta foi obtida pela definição padrão do fatorial.

💡 Dica: Considere a definição de fatorial e a função recursiva.

Alternativa por alternativa

A Correta

A multiplicação de 5 * 4 * 3 * 2 * 1 resulta em 120.

B Erradaerro: Atençãoa que mais engana

O aluno calculou apenas até 4! e esqueceu de multiplicar pelo 5, usando o valor do passo anterior como resultado final.

Por que engana: Confundir o cálculo do fatorial com multiplicação simples ou somar os números em vez de multiplicar sequencialmente.

C Erradaerro: Procedimental

O aluno multiplicou apenas os três primeiros fatores (5 * 4 * 3 = 60) e interrompeu a recursão antes de chegar ao caso base, esquecendo os fatores 2 e 1.

D Erradaerro: Conceitual

O aluno acredita que o fatorial repete o fator 5 ou multiplica termos sem seguir a regra de n vezes (n-1) vezes ate 1; assim obteve 5 * 4 * 5 = 100, o que mostra que não entendeu que cada fator é um inteiro decrescente e distinto.

E Erradaerro: Conceitual

O aluno confundiu fatorial (produto dos inteiros de 1 até n) com soma dos inteiros, obtendo 1 + 2 + 3 + 4 = 10.

Raio-X da questão

Dificuldade Média
Bloom Lembrar
Leitura medio
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade dupla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

função recursiva fatorial

📌 Objetivo

avaliacao

🧱 Pré-requisitos

conceito de fatorial · funcao recursiva

📚 Reveja

Revisar a definição e implementação de funções recursivas.

⚠️ Erro mais comum

Confundir o cálculo do fatorial com multiplicação simples ou somar os números em vez de multiplicar sequencialmente.

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Algoritmos

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.