Números aleatorios del 1 al 9 llenar una matriz bidimencional que pida el
tamaño de la matriz a llenar de (N números) Nfilas x Ncolumnas y que una vez
llena la matriz con números aleatorios pida cuantos números se van a cambiar e
introducirlos, e imprimir la matriz cada vez que se cambien los valores.
Primero creamos la clase Mat.java que va hacer la matriz
bidimensional, y tendrá el método para imprimir
public class Mat{
public int Mat [][];
public int filas, columnas;
public Mat(){
}
public Mat(int f, int c){
filas=f;
columnas=c;
Mat=new int [filas][columnas];
}
public void Llenar(int valor, int i, int j){
Mat[i][j]=valor;
}
public void Mostrar(){ // Muestra los elementos de la matriz.
System.out.println("Matriz:");
for(int i=0;i<filas;i++){
for(int j=0;j<columnas;j++){
System.out.print(Mat[i][j]+" ");
}
System.out.println();
}
}
}
Creamos la clase Sod.java que sera la clase principal
import java.util.Scanner;
import java.util.Random;
import javax.swing.JOptionPane;
public class Sod{
public static void main(String[] arg){
Mat A;
int a,b,c, numeroaleatorio;
Scanner teclado=new Scanner(System.in);
Random aleatorio = new Random();
System.out.println("datos de matriz ");
System.out.println ("filas");
a=teclado.nextInt();
System.out.println ("columnas");
b=teclado.nextInt();
System.out.println ();
A=new Mat(a,b);
for(int i=0;i<A.filas;i++){
for(int j=0;j<A.columnas;j++){
numeroaleatorio=(int)Math.floor(Math.random()*(9-1+1)+1);
// (int)(Math.random()*(HASTA-DESDE+1)+DESDE);
A.Llenar(numeroaleatorio, i, j);
}
}
A.Mostrar();
System.out.println ("cuantos numeros de la matriz va a cambiar");
int ii=0, cargador=0;
ii=teclado.nextInt();
do{
System.out.println ("ingresar valor del numero a cambiar");
int i =teclado.nextInt();
System.out.println ("en fila");
int o =teclado.nextInt();
System.out.println ("en columna");
int u =teclado.nextInt();
A.Llenar(i,o , u);
A.Mostrar();
cargador=cargador+1;
} while (cargador<=ii);
}
}
Corrida del programa
--------------------Configuration: <Default>--------------------
datos de matriz
filas
4
columnas
4
Matriz:
8 6 7 9
1 6 8 1
8 7 2 2
9 8 3 1
cuantos numeros de la matriz va a cambiar
2
ingresar valor del numero a cambiar
3
en fila
1
en columna
3
Matriz:
8 6 7 9
1 6 8 3
8 7 2 2
9 8 3 1
ingresar valor del numero a cambiar
3
en fila
3
en columna
2
Matriz:
8 6 7 9
1 6 8 3
8 7 2 2
9 8 3 1
ingresar valor del numero a cambiar
1
en fila
1
en columna
1
Matriz:
8 6 7 9
1 1 8 3
8 7 2 2
9 8 3 1
Process completed.
No hay comentarios:
Publicar un comentario