Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Java - Multiplicar dos matrices

  Imprimir  
Vista:

Multiplicar dos matrices

Publicado por Sirocco (2 intervenciones) el 29/11/2007 11:17:23
Hola amigos!, tengo un programa que tiene que multiplicar dos matrices creadas aleatoriamente y no se como hacer la matriz resultante. os dejo el codigo para que lo veais y haber si me podeis echar una manita.Se que va con bucles for pero no se como ponerlos para que recorra las filas por columnas. Gracias anticipadas. un saludo!

CODIGO (es en JBuilder):
import java.io.*; public class MultiplicaMatrices { public static void main(String[] args)throws IOException { final int FILAS =4; final int COLUMNAS = 3; int [][] a = new int [FILAS][COLUMNAS]; //porque es una matriz de dos dimensiones (3x3) int [][] b = new int [FILAS][COLUMNAS]; //porque es una matriz de dos dimensiones (3x3) int [][] c = new int [FILAS][COLUMNAS];//porque la matriz resultado es dos dimensiones (3x3) final int BASE = 1; final int RANGO = 10; //leer los datos for (int fila = 0; fila < FILAS; ++fila) // fila tambien la podemos llamar i for (int columna = 0; columna < COLUMNAS ; ++columna){ // columna tambien podemos llamar j a[fila][columna]=(int)(Math.random()*RANGO + BASE); b[fila][columna]=(int)(Math.random()*RANGO + BASE); } //dibujar la matriz for (int fila = 0; fila < FILAS ; ++fila){ for (int columna = 0; columna < COLUMNAS ; ++columna) System.out.print (a[fila][columna] + " "); System.out.println(); // para que pase a la siguiente linea y no salga todos los numeros juntos } System.out.println(); //dibujar la matriz 2 for (int fila = 0; fila < FILAS ; ++fila){ for (int columna = 0; columna < COLUMNAS; ++columna) System.out.print (b[fila][columna] + " "); System.out.println(); // para que pase a la siguiente linea y no salga todos los numeros juntos } //Multiplicar las dos matrices. for ( //NO SE COMO HACERLE. //Dibujamos la matriz resultante. System.out.println(); for (int fila=0;fila<FILAS;++fila){ for (int columna = 0; columna < COLUMNAS ; ++columna) System.out.print (c[fila][columna] + " "); System.out.println(); } System.out.println (" Pulsar INTRO para terminar"); System.in.read(); } }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Multiplicar dos matrices

Publicado por JF Camilo Andres (1 intervención) el 30/11/2009 00:53:51
import java.util.Random; import java.util.Scanner; public class MultiplicacionAleatoria { public static void main (String args[]){ Random r=new Random(); Scanner in=new Scanner(System.in); System.out.println("ingrese numero de filas de la primera matriz"); int x1=in.nextInt(); System.out.println("ingrese numero de columnas de la primera matriz"); int z1=in.nextInt(); System.out.println("ingrese numero de filas de la segunda matriz"); int x2=in.nextInt(); System.out.println("ingrese numero de columnas de la segunda matriz"); int z2=in.nextInt(); int[][] m1=new int[x1][z1]; int[][] m2=new int[x2][z2]; int[][] mR=new int[x1][z2]; System.out.println("La matriz 1"); for(int i=0;i<x1;i++){ System.out.print("[ "); for(int j=0;j<z1;j++){ m1[i][j]=r.nextInt(9); System.out.print(m1[i][j]+" "); } System.out.print("]"); System.out.println(""); } System.out.println("La matriz 2"); for(int i=0;i<x2;i++){ System.out.print("[ "); for(int j=0;j<z2;j++){ m2[i][j]=r.nextInt(9); System.out.print(m2[i][j]+" "); } System.out.print("]"); System.out.println(""); } if(z1==x2){ System.out.println("La matriz resultante es: "); for(int i=0;i<x1;i++){ System.out.print("[ "); for(int j=0;j<z2;j++){ for(int h=0;h<z1;h++){ mR[i][j]+=m1[i][h]*m2[h][j]; } System.out.print(mR[i][j]+" "); } System.out.print("]"); System.out.println(""); } } else{ System.out.println("Los rangos de las matrices son incorrectos"); } } }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar