Algoritmos Recursivos - Ejercicios Resueltos Parte 3
Unidimensional:
package recursividad;
import java.io.*;
public class llenarUnidimensional {
public static void main(String[] args)throws IOException{
BufferedReader e = new BufferedReader(new InputStreamReader(System.in));
int[] arreglo = null;
System.out.println("Ingrese la cantidad de elementos del array");
arreglo = new int[Integer.parseInt(e.readLine())];
arreglo = unidimensional(arreglo,0,e);
}
public static int[] unidimensional(int[] arreglo, int i, BufferedReader e)throws IOException{
if(arreglo.length>i){
System.out.println("Ingrese el elemento "+(i+1)+": ");
arreglo[i] = Integer.parseInt(e.readLine());
return unidimensional(arreglo, i+1,e);
}else{
return arreglo;
}
}
}
Bidimensional:
package recursividad;
import java.io.*;
public class llenarUnidimensional {
public static void main(String[] args)throws IOException{
BufferedReader e = new BufferedReader(new InputStreamReader(System.in));
int[][] arreglo = null;
int col = 0; int fil = 0;
System.out.println("Ingrese la cantidad de elementos de la fila");
fil = Integer.parseInt(e.readLine());
System.out.println("Ingrese la cantidad de elementos de la columna");
col = Integer.parseInt(e.readLine());
arreglo = new int[fil][col];
arreglo = bidimensional(arreglo, 0, 0, e);
}
public static int[][] bidimensional(int [][] arreglo, int i, int j, BufferedReader e) throws IOException{
if(arreglo.length != i){
if(arreglo[0].length-1 != j){
System.out.println("Ingrese el elemento en la posicion ["+(i+1)+"]["+(j+1)+"]");
arreglo[i][j]=Integer.parseInt(e.readLine());
return bidimensional(arreglo, i, j+1, e);
}else{
System.out.println("Ingrese el elemento en la posicion ["+(i+1)+"]["+(j+1)+"]");
arreglo[i][j]=Integer.parseInt(e.readLine());
return bidimensional(arreglo, i+1, 0, e);
}
}else{
return arreglo;
}
}
}
No se olviden dejar sus comentarios y si desean mejorar el código sería un gran logro, bendiciones vuelvan pronto...
Comentarios
Publicar un comentario