Buenas tardes, quería saber si el programa estaba bien y si mi razonamiento es correcto, el mismo es que cuando llego al caso base con n=1, la función factAcum retorna el factorial, luego al ir subiendo para hacer lo que había dejado pendiente, sigue retornando el factorial tambièn. Saludos y gracias.
typedef unsigned int uint;
uint factAcum(uint n, int acum) {
if (n <= 1)
return acum;
else
return factAcum(n-1, n*acum);
};
uint factorial(uint n) {
return factAcum(n, 1);
}