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):
CODIGO (es en JBuilder):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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


0