Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- import java.util.Random;
- public class eje3 {
- public static void cargarMatriz(int [][] matriz, int M,int N) {
- //Preguntar al usuario si desea cargar los elementos aleatoriamente o por consola
- Scanner lec= new Scanner(System.in);
- System.out.println("--Cargar Matriz--");
- System.out.println("1.Ingresar elementos por consola.");
- System.out.println("2.Ingresar elementos aleatorios.");
- int resp=lec.nextInt();
- if(resp==1) {
- for (int i=0;i<M;i++) {
- for(int j=0;j<N;j++) {
- System.out.println("Ingrese un numero a cargar en la posicion "+(i+1)+" - "+(j+1)+" :");
- matriz[i][j]=lec.nextInt();
- }
- }
- }else
- if(resp==2) {
- System.out.println("-Ingrese los rangos para generar dichos numeros aleatorios[min,max] : ");
- System.out.println("--------------------");
- System.out.println("-Valor Min: ");
- int min=lec.nextInt();
- System.out.println("-Valor Max: ");
- int max=lec.nextInt();
- System.out.println("---------------------------");
- Random r = new Random();
- for (int i=0;i<M;i++) {
- for(int j=0;j<N;j++) {
- matriz[i][j]=r.nextInt((max-min)+1)+min;
- }
- }
- }
- }
- public static void mostrarMatriz(int [][] matriz) {
- for (int i=0;i<matriz.length;i++) {
- for(int j=0;j<matriz[i].length;j++) {
- System.out.println("La posiciones cargadas en la matriz son "+(i+1)+" - "+(j+1)+" :"+matriz[i][j]+".");
- }
- }
- }
- public static int[][] traspuestaMatriz(int [][] matriz, int M,int N) {
- int [][] aux= new int[N][M];
- for (int i=0;i<N;i++) {
- for(int j=0;j<M;j++) {
- aux[i][j]=matriz[j][i];
- }
- }
- return aux;
- }
- public static int productoFila(int [][] matriz,int fila) {
- int aux=1;
- for(int j=0;j<matriz[fila].length;j++) {
- aux*=matriz[fila][j];
- }
- return aux;
- }
- public static int sumaColumna(int [][] matriz,int columna) {
- int suma=0;
- for(int i=0;i<matriz.length;i++) {
- suma+=matriz[i][columna];
- }
- return suma;
- }
- public static int menu2() {
- Scanner op1= new Scanner(System.in);
- System.out.println("----Operaciones con matrices---- ");
- System.out.println("1-Calcular el producto de elementos de una fila");
- System.out.println("2-Calcular la suma de elementos de una columna");
- System.out.println("3-Salir.");
- return op1.nextInt();
- }
- public static void menu(int [][] matriz,int [][] matrizT) {
- Scanner lectura= new Scanner(System.in);
- int opcion,op2;
- do{
- System.out.println("----Operaciones con matrices---- ");
- System.out.println("1-Usar Matriz SIN Trasponer.");
- System.out.println("2-Usar Matriz TRASPUESTA.");
- System.out.println("3-Salir.");
- opcion=lectura.nextInt();
- switch(opcion) {
- case 1:
- do{
- op2 =menu2();
- switch(op2) {
- case 1:
- System.out.println("-Ingrese fila:");
- int fila=lectura.nextInt();
- System.out.println("El producto de elementos de la fila "+fila+" es: "+productoFila(matriz,fila-1));
- break;
- case 2:
- System.out.println("-Ingrese columna:");
- int columna=lectura.nextInt();
- System.out.println("La suma de elementos de la columna "+columna+" es: "+sumaColumna(matriz,columna-1));
- break;
- case 3:
- System.out.println("Hasta luego...");
- break;
- default:
- System.out.println("Opcion Invalida!!");
- }
- }while(op2!=3);
- break;
- case 2:
- do{
- op2 =menu2();
- switch(op2) {
- case 1:
- System.out.println("-Ingrese fila:");
- int fila=lectura.nextInt();
- System.out.println("El producto de elementos de la fila "+fila+" es: "+productoFila(matrizT,fila-1));
- break;
- case 2:
- System.out.println("-Ingrese columna:");
- int columna=lectura.nextInt();
- System.out.println("La suma de elementos de la columna "+columna+" es: "+sumaColumna(matrizT,columna-1));
- break;
- case 3:
- System.out.println("Hasta luego...");
- break;
- default:
- System.out.println("Opcion Invalida!!");
- }
- }while(op2!=3);
- break;
- case 3:
- System.out.println("Hasta luego...");
- break;
- default:
- System.out.println("Opcion Invalida!!");
- }
- }while(opcion!=3);
- }
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- int M,N;
- Scanner lectura= new Scanner(System.in);
- System.out.println("Ingrese la cantidad de filas que quiere que tenga su matriz: ");
- M=lectura.nextInt();
- System.out.println("Ingrese la cantidad de columnas que quiere que tenga su matriz: ");
- N=lectura.nextInt();
- System.out.println("--MATRIZ--");
- int [][] MatrizC = new int[M][N];
- cargarMatriz(MatrizC,M,N);
- mostrarMatriz(MatrizC);
- System.out.println("--MATRIZ TRASPUESTA--");
- int [][] MatrizT =traspuestaMatriz(MatrizC,M,N);
- mostrarMatriz(MatrizT);
- menu(MatrizC,MatrizT);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement