a) vai retonar 5*4 -> 20
b) não existe esse método https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html
c) Vai executar infinitamente até estourar a pilha. Exception in thread "main" java.lang.StackOverflowError
1ª vez, recebe 5 e chama o calcular com 5*4
2ª vez, recebe 20 e chama o calcular com 20*19
3ª vez, recebe 380 e chama o calcular com 380-379 e por aí vai sem nunca parar, pois o n não ficará igual que 0
d) não existe esse método https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html
e) CORRETA. retorna N vezes o calcular (N-1) e irá terminar quando o (n==0) -> 5*4*3*2*1 -> 120
Estamos diante de um problema de fatorial de número. O fatorial é o número multiplicado pelo seus antecedentes até o número 1. Veja:
fat (2) = 2 * 1 = 2
fat (3) = 3 * 2 * 1 = 6
fat (4) = 4 * 3 * 2 * 1 = 24
Note que fat (4) pode ser escrito assim:
fat (4) = 4 * fat (3)
= 4 * [3*2*1]
E devemos considerar que o fatorial de 0 é 1. Essa será a condição trivial, de parada da nossa função recursiva. Logo faremos uma função recursiva da seguinte maneira:
n * calcular(n - 1); // a cada chamada diminui o valor de n até chegar a condição de parada
GABARITO: E