Imagem de fundo

Na matemática, a multiplicação de duas matrizes, matA por...

Na matemática, a multiplicação de duas matrizes, matA por matB, resulta em uma outra matriz, matC, em que cada elemento é dado pela soma das multiplicações, elemento a elemento, da linha equivalente em matA pela coluna equivalente em matB. Dadas duas matrizes de inteiros, int matA[LA][CA] e int matB[LB][CB], com um total de LA e LB linhas, respectivamente, com um total de CA e CB colunas, respectivamente, e com CA igual a LB, o trecho de código C capaz de gerar uma matriz matC como resultado da multiplicação de matA por matB é


A

int l, c, k, soma;

int matC[LA][CB];

for (l = 0; l < LA; l++) {

______for (c = 0; c < CB; c++) {

____________soma = 0;

____________for (k = 0; k < CA; k++){

__________________soma += matA[l][k] * matB[k][c];

____________}


____________matC[l][c] = soma;

______}

}


B

int l, c, k, soma = 0;

int matC[LA][CB];

for (l = 0; l < LA; l++) {

______for (c = 0; c < CB; c++) {

____________for (k = 0; k < CA; k++){

__________________soma += matA[l][k] * matB[k][c];

____________}

matC[l][c] = soma;


______}

}


C

int l, c, k, soma;

int matC[LA][CB];

for (l = 0; l < LA; l++) {

______for (c = 0; c < CB; c++) {

____________soma = 0;

____________for (k = 0; k < CA; k++){

__________________soma = matA[l][k] * matB[k][c];

____________}


____________matC[l][c] = soma;

______}

}


D

int l, c, soma = 0;

int matC[LA][CB];

for (l = 0; l < LA; l++) {

______for (c = 0; c < CB; c++) {

__________________soma += matA[l][c] * matB[l][c];


__________________matC[l][c] = soma;

______}

}


E

int l, c, k, soma;

int matC[LA][CB];

for (l = 0; l < LA; l++) {

______for (c = 0; c < CB; c++) {

________________soma = 0;

________________for (k = 0; k < CA; k++){

__________________soma += matA[k][l] * matB[c][k];

________________}


________________matC[l][c] = soma;

______}

}