Multiplicar matrizes [RESOLVIDO]

Pessoal tentei fazer multiplicar a matriz, mas ainda tem um problema na multiplicação de alguem puder dá um toque ficarei grato.

vlw :smiley:

[code]public class MatrizMultiplicacao{

public static void main (String args[]){

	Scanner t = new Scanner (System.in);
	int a[][]; a = new int[2][2];
	int b[][]; b = new int[2][2];
	int c[][]; c = new int[2][2];

	for (int i= 0; i < 2; i++){
			System.out.println();
		for (int j= 0; j <2; j++){
			System.out.print ("Digite o elemento "+i+ " " +j+" da matriz a: ");
				a[i][j] = t.nextInt();
		}
	}

	for (int i= 0; i <2; i++){
			System.out.println();
		for (int j= 0; j <2; j++){
			System.out.print ("Digite o elemento "+i+ " " +j+ " da matriz b: ");
				b[i][j] = t.nextInt();		
		}
	}
	for (int i=0; i < a[i][i]; i++){
			System.out.println();
		for (int j= 0; j < b[j][j]; j++){
			
			for (int x= 0; x < a[j][j]; x++){
				c[i][j] += a[i][x] * b[x][j];
					System.out.print(c[i][j]);
					System.out.print(" ");

}

		}
	}
	
	System.out.println();	
	System.out.println();	
}

}[/code]

Olha só, nos dois loops (for) você está dizendo que o loop irá terminar quando (i < a[i][j]) e (j < b[i][j])
isso não está correto. Você está utilizando três for onde no seu caso não é necessária, basta somente dois
da mesma maneira que os indices (i, j) são atribuidos as variáveis (a e b) você fará com a variável ©.

for (int i = 0; i < a.length; i++) {
   for (int j = 0; j < a.length; j++) {
      c[i][j] = a[i][j] * b[i][j];
   }
}

Bem porque eu somente utilizei a variável a e b?
Porque quando faz-se a multiplicação de duas matrizes elas precisam ser do mesmo tamanho,
não necessariamente. Mas quando você quer multiplicar duas matrizes e não é necessário que elas sejam
do mesmo tamanho, aí coloca-se um limite de cada variável em cada for.

mas tipo a multiplicação num ocorre dessa maneira com matrizes.

a multiplicação tem q ser linha por colunas

Bem se é esse o caso, então é só você mudar os indices.

Se não quiser perder tempo com isso, usa a biblioteca JScience (procure no Google). Tem todas operações com Matrizes lá.

        for (int i = 0; i < a.length; i++) {
            System.out.println("");
            for (int j = 0; j < b.length; j++) {
                for (int x = 0; x < a[i][j]; x++) {
                    c[i][j] = a[i][x] * b[x][j];
                    System.out.print(c[i][j]);
                    System.out.print(" ");
                }
            }
            break;
        }

        System.out.println();
        System.out.println();

Nesse post eu publiquei código para várias operações com Matrizes, inclusive multiplicação.

http://www.guj.com.br/posts/list/144707.java

Vlw mano tentei com o vc mostrou mas queria mesmo era fazer da forma q eu estava pensando e consegui.

Se alguem quiser tentar ta aki:

http://www.forumpcs.com.br/viewtopic.php?t=42091