Foro de elhacker.net

Programación => Java => Mensaje iniciado por: lexoazul en 5 Febrero 2010, 23:57 pm



Título: Problema de recursividad
Publicado por: lexoazul en 5 Febrero 2010, 23:57 pm
Tengo una duda sobre este ejercicio:
Código:
 public int sumarNumero(int n)
    {
       
        if(n==0)
        {
            System.out.println("No se puede Sumar:"+n);
            return n;
        }
        else
            System.out.println((sumarNumero(n / 10) + (n % 10)));
           
            return (sumarNumero(n / 10) + (n % 10));
    }
    public static void main(String args[])
    {
        Recursividad2 r2 = new Recursividad2();       
        r2.sumarNumero(34);
    }

Segun es un ejemplo que trata sobre sumar los digitos de un numero es decir si introducimos 34, el resultado debe de ser 7; pero no lo hace por el contrario lo primero que me imprime es un 3 despues un 7, luego otro 3 y por ultimo se cierra.
Si es que no me equivo como es recursivo siempre debe de estar imprimiendo un 7
Cualquier ayuda se lo agradeceria muchisimo.

De antemano Gracias a todos.


Título: Re: Problema de recursividad
Publicado por: Leyer en 6 Febrero 2010, 01:19 am
Ok pruebalo asi

Código
  1. public int sumarNumero(int n){
  2.        if(n==0)return n;
  3.        return (sumarNumero(n / 10) + (n % 10));
  4.    }


Título: Re: Problema de recursividad
Publicado por: lexoazul en 6 Febrero 2010, 01:33 am
El problema es que cuando mando a imprimir esta parte del codigo:
Código:
System.out.println(sumarNumero(n / 10) + (n % 10))

me imprime primero un 3, despues el 7(el resultado correcto con respecto al numero 34) y por ultimo otro 3.
bueno la duda es como mando a imprimir al resultado correcto.

Talvez sea algo facil pero es que soy nuevo con este lenguaje.

muchisimas gracias LEYER por leer mi duda.


Título: Re: Problema de recursividad
Publicado por: Leyer en 6 Febrero 2010, 01:39 am
bueno creo que deberias correr el anterior :)


Título: Re: Problema de recursividad
Publicado por: Blitzkrieg' en 6 Febrero 2010, 02:26 am
bueno creo que deberias correr el anterior :)

Leyer el link al JDK 7 de tu firma esta roto xD


Título: Re: Problema de recursividad
Publicado por: Leyer en 6 Febrero 2010, 02:31 am
 :laugh: no lo habia notado peor ya esta


Título: Re: Problema de recursividad(Solucionado)
Publicado por: lexoazul en 8 Febrero 2010, 22:31 pm
Ok muchas gracias Leyer Ya busque mi error estaba colocando mal el System.out.print

Nuevamente gracias y me sirvio el codigo que me enviaste.


 ;D ;D       ;-) ;-)         :rolleyes: :rolleyes:            ::) ::)