hola me ayudan a entender que es lo que sucede.. aqui...
Código PHP:
/* Ejemplo - aprenderaprogramar.com */
//Clase que permite elevar un número entero m a otro número entero n y obtener un resultado
public class Exponenciador {
//Constructor
public Exponenciador () {
//Nada que declarar
}
//Método 1 para calcular la potencia
public int potenciaIterando (int m, int n) {
int resultado = 1;
for (int i=1; i<=n; i++) {
resultado = resultado * m;
}
return resultado;
} //Cierre del método
//Método 2 para calcular la potencia
public int potenciaConRecursion (int m, int n) {
if (n==0) { return 1;
} else { return m * potenciaConRecursion (m, n-1); }
} //Cierre del método
} //Cierre de la clase
no entiendo cuando usa este metodo "potenciaConRecursion" es un poco confuso..
supongamos que los parametros son 2 y 3
claramente el resultado da 8.
entra primero por el ELSE, como el n no es cero es "3"
y devuelve... 2 x ?
llama de nuevo al metodo con potenciaConRecursion (2, 2)...no?