Informática, perguntado por fabiolopes1975, 11 meses atrás

Considere a seguinte função recursiva, implementada em Linguagem C:


int fatorial (int num)
{
if(num==0)
return 1;
else

return n * factorial (n-1);
}

Qual é o resultado final se a função receber como parâmetro de entrada num = 4?

Escolha uma:
a.
4.

b.
24.

c.
8.

d.
12.

e.
6.

Soluções para a tarefa

Respondido por manoelmsq
73

A resposta correta é 24


Este é um programa de calculo fatorial, logo seus resultados são exponenciais.

No caso Base do programa

if(num==0)

      return 1;


Ou seja:

Se "num" for igual à 0

Retorna -> 1 (esse "return 1", quer dizer que esse será o valor armazenado na matriz "factorial")


Mas caso "num" não seja 0, então:

return n * factorial (n-1);


Ou seja:

"n" é o número de entrada (o "num"), " * " vezes o último resultado obtido em "factorial".


Fazendo o processo gradativo:

Se "num" for igual à 0

Retorna -> 1


Se "num" for igual à 1

Retorna -> 1 * 1 = 1

Retorna -> 1


Se "num" for igual à 2

Retorna -> 2 * 1 = 2

Retorna -> 2


Se "num" for igual à 3

Retorna -> 3 * 2 = 6

Retorna -> 6


Se "num" for igual à 4

Retorna -> 4 * 6 = 24

Retorna -> 24



RESPOSTA CORRETA:      b) 24


ericcmfp8rujm: correto, 24
ctiagohenrique: certin
junintuc: correto
androidgeovana: issssssso <3
Respondido por CleitonMoraes8
2

Resposta:

Explicação:

CORRETA: b) 24

Perguntas interessantes