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

Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

Multiplicar dos matrices

Autor:Sirocco (2 intervenciones)
Fecha: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(); } }
Responder
información
Otras secciones de LWP con contenido similar...
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

RE:Multiplicar dos matrices

Autor:JF Camilo Andres (1 intervención)
Fecha: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"); } } }
Comentar