Foro de elhacker.net

Programación => Java => Mensaje iniciado por: cojon en 16 Diciembre 2009, 04:32 am



Título: [SOLUCIONADO]ayuda un programa de recursividad
Publicado por: cojon en 16 Diciembre 2009, 04:32 am
hola a todos, un saludo antes de na, bueno soy principiante en esto de programacion, y me la e llevado poco a poco, peor me e encontrado con algo que se llama recursividad y la verdad valla lio
 buno me an dejado 2 programas
1.-imprimir las letras alrves e

import java.util.Scanner;
public class PalabraAlRevesRecursividad {
public static void main(String[] args) {
//Se pide el String
System.out.println("Introduzca una palabra");
Scanner sc = new Scanner(System.in);
String palabra = sc.nextLine();

imprimirReves(palabra,0);
}
public static void imprimirReves(String palabra, int num) {
if(num == palabra.length()-1) {
System.out.println(palabra.charAt(palabra.length() - 1 -num));
}else {
System.out.print(palabra.charAt(palabra.length() - 1 -num));
imprimirReves(palabra,num+1);
}
}
}



2.-crear  un arreglo  y llenarlo , indicar cual es el numero mayor de los que se an metido, el tamaño y los numeros del arreglo seran dados por el usuario

este es mi problema, lo e intentado hacer pero tengo problemas a la hora de mandar a imprimir, y me enredo, ademas que no creo que me pueda salir
bueno muchas graxias  por su ayuda     ;)


Título: Re: ayuda un programa de recursividad
Publicado por: Leyer en 16 Diciembre 2009, 04:50 am
el 2 recursivo :huh:


Título: Re: ayuda un programa de recursividad
Publicado por: cojon en 16 Diciembre 2009, 04:57 am
si,recursividadxD  ;D


Título: Re: ayuda un programa de recursividad
Publicado por: Leyer en 16 Diciembre 2009, 07:22 am
que te parece este
Código
  1. /**
  2. * @param array[]
  3. * @param array[0]
  4. * @param 1
  5. *
  6. */
  7. public static void recx(int [] array,int m,int x){
  8. if(x<=array.length-1){
  9. if(m >= array[x]){
  10. x++;
  11. recx(array, m,x);
  12. }else{
  13. recx(array,array[x],x);
  14. }
  15. }else{
  16. System.out.println(m);
  17. }
  18. }


Título: Re: ayuda un programa de recursividad
Publicado por: cojon en 16 Diciembre 2009, 07:32 am
ese fue el que me salio

Código
  1. /**
  2. * @param array[]
  3. * @param array[0]
  4. * @param 1
  5. *
  6. */
  7. public static void recx(int [] array,int m,int x){
  8. if(x<=array.length-1){
  9. if(m >= array[x]){
  10. x++;
  11. recx(array, m,x);
  12. }else{
  13. recx(array,array[x],x);
  14. }
  15. }else{
  16. System.out.println(m);
  17. }
  18. }



me parece bien,pero mi lio es que no se como mandar a pedir el tamaño del arreglo y los numeros que se meten al arreglo, y como mandar a imprimir  :-[


Título: Re: ayuda un programa de recursividad
Publicado por: Leyer en 16 Diciembre 2009, 07:34 am
jajaj bueno pense que ya sabias eso :-\ bueno es asi

Código
  1. import java.util.Scanner;
  2. /**
  3.  * @author leyer
  4.  * */
  5. public class test2 {
  6.  
  7. public static void recx(int [] array,int m,int x){
  8. if(x<=array.length-1){
  9. if(m >= array[x]){
  10. x++;
  11. recx(array, m,x);
  12. }else{
  13. recx(array,array[x],x);
  14. }
  15. }else{
  16. System.out.println(m);
  17. }
  18. }
  19. public static void main(String[] args) {
  20. Scanner scanner = new Scanner(System.in);
  21. System.out.println("SIZE: ");
  22. int size=scanner.nextInt();
  23. int []array = new int[size];
  24. for(int index=0;index<array.length;index++){
  25. System.out.println("Element ["+index+"] :");
  26. int t = scanner.nextInt();
  27. array[index]=t;
  28.   }
  29. recx(array,array[0],1);
  30. }
  31. }


Título: Re: ayuda un programa de recursividad
Publicado por: cojon en 16 Diciembre 2009, 07:42 am
jajaj bueno pense que ya sabias eso :-\ bueno es asi

Código
  1. import java.util.Scanner;
  2. /**
  3.  * @author leyer
  4.  * */
  5. public class test2 {
  6.  
  7. public static void recx(int [] array,int m,int x){
  8. if(x<=array.length-1){
  9. if(m >= array[x]){
  10. x++;
  11. recx(array, m,x);
  12. }else{
  13. recx(array,array[x],x);
  14. }
  15. }else{
  16. System.out.println(m);
  17. }
  18. }
  19. public static void main(String[] args) {
  20. Scanner scanner = new Scanner(System.in);
  21. System.out.println("SIZE: ");
  22. int size=scanner.nextInt();
  23. int []array = new int[size];
  24. for(int index=0;index<array.length;index++){
  25. System.out.println("Element ["+index+"] :");
  26. int t = scanner.nextInt();
  27. array[index]=t;
  28.   }
  29. recx(array,array[0],1);
  30. }
  31. }


valla si que se me iva a hacer imposible, yo los pedia con JOotionPane pues no e visto esto a fondo,  pero muchas grax colega se ve que sabes mucho suerte!!! ;-)


Título: Re: ayuda un programa de recursividad
Publicado por: Leyer en 16 Diciembre 2009, 07:55 am
con JOotionPane jamas :-X y bueno para eso estamos

SL2.