AYUDAAAA URGEEE!!!

kike
30 de Noviembre del 2007
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,SOLO SE QUE VA CONTRES BUCLES FOR


//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();
}

}

Siro
30 de Noviembre del 2007
Facil facil:
//Multiplicar las dos matrices.
for (int k = 0 ; k < 3 ; ++k ) {
for (int i = 0 ; i < 3 ; ++i ) {
for (int j = 0 ; j < 3 ; ++j ) {
c[k ][i] += a[k] [j] * b [j] [i] ;
}
}
}


espero que te sirva un saludo

kike
30 de Noviembre del 2007
Muxas graciasss si q funcionaaa. gracias de verdad Siro