Tengo una duda sobre este ejercicio:
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.
Ok pruebalo asi
public int sumarNumero(int n){
if(n==0)return n;
return (sumarNumero(n / 10) + (n % 10));
}
El problema es que cuando mando a imprimir esta parte del codigo:
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.
bueno creo que deberias correr el anterior :)
Cita de: LEYER en 6 Febrero 2010, 01:39 AM
bueno creo que deberias correr el anterior :)
Leyer el link al JDK 7 de tu firma esta roto xD
:laugh: no lo habia notado peor ya esta
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: ::) ::)