Sumatorio de un numero de forma recursiva

24/Jun/2007 Java , , , , 1 Comentario

Hace unos días escribíamos el ejemplo de cómo calcular el sumatorio de un número en Java. Para ello utilizábamos un bucle while en el que iterábamos desde el número 1 hasta el sumatorio. En cada una de las iteraciones íbamos realizando sumas.

Otra forma de resolver este ejemplo es mediante programación recursiva. La programación recursiva consiste en llamar de forma iterativa a un método.

Es decir, se llama por primera vez a un método, el cual hará algo y se llamará a si mismo. Si nos paramos a pensar, esto significa que entraremos en un bucle infinito y, claro está, no nos llevará lejos. Es por ello que dentro del método habrá una condición de guarda para parar las iteraciones.

En el caso del sumatorio lo que el método hará será sumar un número y llamarse a si mismo decrementando el número que le entra como valor.

  1. private static int Sumatorio(int iNumero){
  2. if (iNumero==0)
  3. return 0;
  4. else
  5. return iNumero + Sumatorio(iNumero-1);
  6. }

Como podemos ver en el código, la condición de guarda es controlar que el número ha llegado a cero. En este caso, en vez de llamar de nuevo al método, retornaremos el valor de cero.

Solo nos quedará el llamar por primera vez al método con el número sobre el que queremos calcular el sumatorio. Esta invocación la realizaremos desde el método main.

  1. public static void main(String[] args) {
  2. System.out.println(Sumatorio(10));
  3. }

Vídeos sobre Java


¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*