PUNO HVALA ZA POMOC OVAKO IZGLEDA PUNO LJEPSE
1. Napisati C program koji će učitati dimenzije (RA x KA) realne matrice A (maksimalno
10 x 10) , dimenzije (RB x KB) realne matrice B (maksimalno 10 x 10), te učitati
elemente tih matrica. Program zatim treba izračunati matricu C koja je proizvod
matrica A i B. Na kraju program treba ispisati sve tri matrice: A, B i C.
- RA, RB označavaju broj redova matrica A i B, respektivno;
- KA, KB označavaju broj kolona matrica A i B, respektivno.
Prilikom unosa dimenzija matrica program treba provjeriti da li su unesene dimenzije
u dozvoljenim granicama, tj. da li je
RA<=10, RB<=10, KA<=10, KB<=10,
te isto tako program treba provjeriti da li se matrice mogu množiti, tj. da li je
ispunjeno:
KA=RB
moj pokusaj:
STA NEVALJA?
Code:
#include <stdio.h>
int main()
{
/*deklaracija polja i varijabli*/
int A[10][10],B[10][10],C[10][10],i,j,k,m,RA,KA,RB,KB,RC,KC;
/*unos dimenzije matrica*/
do
{
printf("\nUnesite dimenzije prve matrice: ");
scanf("%d %d", &RA,&KA);
printf("\nUnesite dimenzije druge matrice: ");
scanf("%d %d", &RB,&KB);
}while (RA<1||RA>10||RB<1||RB>10||KA<1||KA>10||KB<1||KB>10);
/*uslov za mnozenje matrica*/
if (KA==RB)
{
/*Unos matrice A*/
for (i=0;i<RA;i++)
{
for(j=0;j<KA;j++)
{
printf("\nUnesite element [%d][%d] matrice A: ", i,j);
scanf("%d", &A[i][j]);
}
}
/*Unos matrice B*/
for (i=0;i<RB;i++)
{
for(j=0;j<KB;j++)
{
printf("\nUnesite element [%d][%d] matrice B: ", i,j);
scanf("%d", &B[i][j]);
}
}
/*izracubavanje matrice C i ucitavanje njenih vrijednosti*/
m=0;
for(i=0;i<RA;i++)
{
for(k=0;k<KA;k++)
{
for(j=0;j<KB;j++)
{
m+=A[i][j]*B[j][k];
}
C[i][k]=m;
}
}
/*ispis matric A*/
printf("\nMatrica A igleda ovako:\n");
for(i=0;i<RA;i++)
{
for(j=0;j<KA;j++)
{
printf("%6d", A[i][j]);
}
printf("\n");
}
printf("\n");
/*ispis matric B*/
printf("\nMatrica B igleda ovako:\n");
for(i=0;i<RB;i++)
{
for(j=0;j<KB;j++)
{
printf("%6d", B[i][j]);
}
printf("\n");
}
printf("\n");
/*ispis matric C*/
printf("\nMatrica C igleda ovako:\n");
for(i=0;i<RA;i++)
{
for(j=0;j<KB;j++)
{
printf("%6d", C[i][j]);
}
printf("\n");
}
printf("\n");
}
else
{
printf("\nOve matrice nisu ulancene");
printf("\njer dimenzije koje ste unijeli ne dozvoljavaju njihovo mnozenje");
printf("\nzbog toga sto broj kolona prve matrice nije jednak broju vrsta druge mantrice!\n");
}
return 0;
}