Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

ayuda con programa recursivo

maderogumi

Bovino adolescente
Desde
27 Dic 2008
Mensajes
53
buenas, tengo un problema con un programa recursivo y me gustaria saver sialguien me puede ayudar.
El problema esn cuestion me pide hacer un programa en java con un main que llame a una fucion que pasandole un integer devuelva el numero invertido ej: si le paso 789
devuelve 987.
El problema esque no puedo utilizar ni strings, ni vectores ni bucles estilo for o while dentro de la funcion solo lo puedo hacer recursivamente.

el codigo que tengo hasta ahora (el cual no fucnciona porsupuesto) es:

public static int Inverter(int n){
int resultado=n;
int numeroInvertido=0;
int resto=0;

if(n<10){
resultado=n;
}
else{
resto=resultado%10;
resultado=Inverter (resultado/10);
numeroInvertido=numeroInvertido*10+resto;
}
return numeroInvertido;
}

Gracias de antemano
 
estuviste muy cerca, casi le diste


class recurrus
{

public static void main(String[] Args)
{
int Valor = 975;
System.out.print("El numero incial es: ");
System.out.println(Valor);
System.out.print("El numero final es: ");
System.out.println(Invertir(Valor,0));
}

public static int Invertir(int numero, int inversion){
if(numero<10){
return (inversion*10)+numero;
}
else{
int resto=numero%10;
int numeroContinuar = numero /10;
int numeroInviertiendo = (inversion*10)+resto;
return Invertir(numeroContinuar , numeroInviertiendo );
}
}


}
 
llamadas
1: Invertir(975, 0);
2: Invertir(97, 5);
3: Invertir(9, 57);
4: return(579);



recibe saludos
 
es un places

pero estabas bien cerca, ya tenias la idea, si te fija emplee las misma tecnicas, solo que ya veras enprofundidad la recursion y despues de que la veas en profundidad estaras bien

te recomiendo mas adelante veas como recorrer una estructura de datos de arbol en recursividad, generalmente se emplea un parametro que hace de contador, el retorno, que es el que cierra el hilo de recurrencias, puede estar ubicado antes de o despues de tal forma que las ejecuciones se realicen antes de el recurrencia, o antes, o al medio

en este caso meti un segundo parametro cosa que no suele hacerse, pero es valido, pero en fin, tienes buena base, y la idea la estabas pensando muy bien, no te falto casi nada, pues mucha suerte a mi me parece que vas a ser bueno en eso, en serio, muchos le teimamos a la recursividad, pero la verdad es bastante simple si la ves en profundidad

suerte
 
Volver
Arriba