Boa tarde, sou nova aqui, acabei de me registar. Estou com uma dúvida a resolver um exercício. Se me puderem ajudar, agradecia imenso!
É pedido neste problema a multiplicação de duas matrizes, a função recebe 2 ponteiros para matrizes do tipo Mat (que é uma estrutura) e querem que imprime no output o resultado da multiplicação das 2 matrizes.
O meu problema é na função main quando chama a função, algo não está bem declarado.
Vou colocar aqui:
typedef struct{
int lines, cols;
int **val;
}Mat;
void multPrint(Mat *a, Mat *B)
{
int tamanho = (a->lines * b->lines);
int i,j,x=0;
int y=0;
int *vec;
vec = (int*)malloc(sizeof(int) * (a->lines));
for(i=0; i< tamanho; i++)
vec[i]=0;
for(i=0; i< (a->lines); i++)
y=0;
while(y < (b->cols))
{
for(j=0; j< (b->cols); j++)
{
vec[x]= vec[x] + (a->val[ i ][ j ] * b->val[ j ][ y ]);
}
y++;
x++;
}
}
main()
{
Mat *v;
Mat *s;
v = (Mat*)malloc(sizeof(Mat));
s = (Mat*)malloc(sizeof(Mat));
v = {2,2,{1,2},{3,4}};
s = {2,2,{1,1},{3,0}};
multPrint(v,s);
}
Pergunta
WorldChess
Boa tarde, sou nova aqui, acabei de me registar. Estou com uma dúvida a resolver um exercício. Se me puderem ajudar, agradecia imenso!
É pedido neste problema a multiplicação de duas matrizes, a função recebe 2 ponteiros para matrizes do tipo Mat (que é uma estrutura) e querem que imprime no output o resultado da multiplicação das 2 matrizes.
O meu problema é na função main quando chama a função, algo não está bem declarado.
Vou colocar aqui:
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.