Informática, perguntado por eduardoaragao8, 4 meses atrás

Faca um programa que multiplique duas matrizes. O programa devera' estar estruturado de maneira que:
1) o usuário forneça as dimensões das matrizes (teste se as dimensões são compatíveis, isto é, se as matrizes podem ser multiplicadas);
2) as matrizes sejam alocadas dinamicamente (você pode usar a função vista nesta página para isto);
3) as matrizes sejam lidas pelo teclado (faça uma função para leitura das matrizes);
4) as matrizes sejam, então, multiplicadas (faça uma função para a multiplicação);
5) a matriz resultante seja apresentada em tela (faça uma função para apresentar a matriz na tela).
OBS: Faça, também, alocação dinâmica da matriz resultante.

Soluções para a tarefa

Respondido por macielfsouza
0

Resposta:

#include<stdio.h>

int main() {

   int a[10][10], b[10][10], c[10][10], n, i, j, k;

   printf("Enter the value of N (N <= 10): ");

   scanf("%d", & n);

   printf("Enter the elements of Matrix-A: \n");

   for (i = 0; i < n; i++) {

       for (j = 0; j < n; j++) {

           scanf("%d", & a[i][j]);

       }

   }

   printf("Enter the elements of Matrix-B: \n");

   for (i = 0; i < n; i++) {

       for (j = 0; j < n; j++) {

           scanf("%d", & b[i][j]);

       }

   }

   for (i = 0; i < n; i++) {

       for (j = 0; j < n; j++) {

           c[i][j] = 0;

           for (k = 0; k < n; k++) {

               c[i][j] += a[i][k] * b[k][j];

           }

       }

   }

   printf("The product of the two matrices is: \n");

   for (i = 0; i < n; i++) {

       for (j = 0; j < n; j++) {

           printf("%d\t", c[i][j]);

       }

       printf("\n");

   }

   return 0;

}

Explicação:

Perguntas interessantes