zadatak glasi:
2. Napisati C program koji sa standardnog ulaza učitava elemente realne matrice
dimenzija 5 x 5, te izračunava sumu elemenata svake kolone i sumu elemenata
svakog reda.
Za unos i pohranjivanje matrice koristite dvodimenzionalno polje, dok za
pohranjivanje suma po redovima i kolonama trebate koristiti jednodimenzionalno
polje.
Program također treba pronaći:
- u kojoj koloni je najmanja suma,
- u kojem redu je najveća suma,
te ispisati na standardni izlaz unesenu matricu, redne brojeve i sume pronađene
kolone, odnosno, reda.
moj pokusaj:
Code:
#include <stdio.h>
int main()
{
/*deklaracija polja i varijabli*/
float A[5][5],sr[5],sk[5],m=0,min,max;
int i,j,r,e;
/*unos matrice A*/
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("\nUnesite [%d][%d] element matrice A: ", i,j);
scanf("%f", &A[i][j]);
}
}
/*ispis matrice A*/
printf("\nMatrica A izgleda ovako: \n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("\t%.2f", A[i][j]);
}
printf("\n");
}
/*zbrajanje po redovima*/
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
m+=A[i][j];
}
sr[i]=m;
m=0;
}
/*ispis suma redova*/
for(i=0;i<5;i++)
{
printf("\nSuma %d. reda je: %f", i+1,sr[i]);
}
printf("\n");
/*ispis majvece sume*/
max=sr[0];
for(i=1;i<5;i++)
{
if(sr[i]>=max)
{
max=sr[i];
r=i;
}
}
printf("\nNajveca suma je u %d. redu i iznosi %f \n", r+1,max);
printf("\n");
/*zbrajanje po koloni*/
m=0;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
m+=A[j][i];
}
sk[i]=m;
m=0;
}
/*ispis suma kolona*/
for(i=0;i<5;i++)
{
printf("\nSuma %d. kolone je: %f", i+1,sk[i]);
}
printf("\n\n");
/*odredjivanje majmanje sume kolona*/
min=sk[0];
for(i=1;i<5;i++)
{
if(sk[i]<=min)
{
min=sk[i];
e=i;
}
}
/*ispis najmanje sume kolone*/
printf("\nNajmanja suma je u %d. koloni i iznosi %f \n", e+1,min);
printf("\n");
return 0;
}
#include <stdio.h>
int main()
{
/*deklaracija polja i varijabli*/
float A[5][5],sr[5],sk[5],m=0,min,max;
int i,j,r,e;
/*unos matrice A*/
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("\nUnesite [%d][%d] element matrice A: ", i,j);
scanf("%f", &A[i][j]);
}
}
/*ispis matrice A*/
printf("\nMatrica A izgleda ovako: \n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("\t%.2f", A[i][j]);
}
printf("\n");
}
/*zbrajanje po redovima*/
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
m+=A[i][j];
}
sr[i]=m;
m=0;
}
/*ispis suma redova*/
for(i=0;i<5;i++)
{
printf("\nSuma %d. reda je: %f", i+1,sr[i]);
}
printf("\n");
/*ispis majvece sume*/
max=sr[0];
for(i=1;i<5;i++)
{
if(sr[i]>=max)
{
max=sr[i];
r=i;
}
}
printf("\nNajveca suma je u %d. redu i iznosi %f \n", r+1,max);
printf("\n");
/*zbrajanje po koloni*/
m=0;
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
m+=A[j][i];
}
sk[i]=m;
m=0;
}
/*ispis suma kolona*/
for(i=0;i<5;i++)
{
printf("\nSuma %d. kolone je: %f", i+1,sk[i]);
}
printf("\n\n");
/*odredjivanje majmanje sume kolona*/
min=sk[0];
for(i=1;i<5;i++)
{
if(sk[i]<=min)
{
min=sk[i];
e=i;
}
}
/*ispis najmanje sume kolone*/
printf("\nNajmanja suma je u %d. koloni i iznosi %f \n", e+1,min);
printf("\n");
return 0;
}
znam da se moglo ovo uraditi i krace ali zapetljam se kad kremen da skratim pa sad za sad znam ovako
problem:
e sad npr. desi se da su dvije minimalne sume i sada je meni problem kako navesti da se minimalna suma nalazi u dva reda ali da navedem brojeve tih redova ili kolone
nadam se da cete me shvatiti
molim pomozite hitno mi je a treba mi za fax!