#include <stdio.h>
int main()
{
int w1, k1, w2, k2, c, d, k, sum = 0;
int pierwsza[40][40], druga[40][40], iloczyn[40][40];
printf("Podaj ilosc wierszy pierwszej macierzy: ");
scanf("%d", &w1);
printf("Podaj ilosc kolumn pierwszej macierzy: ");
scanf("%d", &k1);
printf("\nPodaj elementy pierwszej macierzy:\n\n");
for ( c = 0 ; c < w1 ; c++ )
for ( d = 0 ; d < k1 ; d++ )
{
scanf("%d", &pierwsza[c][d]);
}
printf("\nPodaj ilosc wierszy drugiej macierzy: ");
scanf("%d", &w2);
printf("\nPodaj ilosc kolumn drugiej macierzy: ");
scanf("%d", &k2);
if ( k1 != w2 )
printf("\nMacierze o podanych wymiarach nie moga zostac wymnozone ze wzgledu na niedopasowane wymiary\n");
else
{
printf("Podaj elementy drugiej macierzy.\n\n");
for ( c = 0 ; c < w2 ; c++ )
for ( d = 0 ; d < k2 ; d++ )
{
scanf("%d", &druga[c][d]);
}
for ( c = 0 ; c < w1 ; c++ )
{
for ( d = 0 ; d < k2 ; d++ )
{
for ( k = 0 ; k < w2 ; k++ )
{
sum = sum + pierwsza[c][k]*druga[k][d];
}
iloczyn[c][d] = sum;
sum = 0;
}
}
printf("\nMacierz pierwsza to: \n\n");
for ( c = 0 ; c < w1 ; c++ )
{
for ( d = 0 ; d < k1 ; d++ )
printf("%d\t", pierwsza[c][d]);
printf("\n");
}
printf("\nMacierz druga to: \n\n");
for ( c = 0 ; c < w2 ; c++ )
{
for ( d = 0 ; d < k2 ; d++ )
printf("%d\t", druga[c][d]);
printf("\n");
}
printf("\nMacierz bedaca iloczynem podanych macierzy to: \n\n");
for ( c = 0 ; c < w1 ; c++ )
{
for ( d = 0 ; d < k2 ; d++ )
printf("%d\t", iloczyn[c][d]);
printf("\n");
}
}
return 0;
}
Posiadam taki kod, do mnożenia macierzy jednak nie umiem go przerobić tak by wykonać zadanie tak jak z załącznika. Bardzo proszę o pomoc. Od tego zależy moje zaliczenie z przedmiotu. Z góry dziękuję.