[ freakazoid @ 16.06.2011. 18:24 ] @
Treba mi pomoc vezano za jedan zadatak. Zadatak glasi: Napisite program koji ce omoguciti kreiranje matrice 5x4. Svaki red u matrici predstavlja studenta, a svaka od kolona ocjenu koju je student postigao na 4 ispita. Uz pomoc: –Funkcije: void unos(int[][4], int, int); omogucite unos ocjena za svakog od studenata; vodite racuna da se mogu unijeti samo prolazne ocjene (6-10); –Funkcije: int max(int[][4],int,int,int); pronaci najvecu ocjenu svakog od studenata; –Pomoc funkcije: float prosjek(int[][4],int,int,int); izracunati prosjek za svaki odpredmeta; Ispise najvecih ocjena za svakog od studenata I prosjecnih ocjena po predmetu vrsite u funkciji main. Ja sam uspio uraditi nesto, unos nije problem, ove druge 2 funkcije jesu, uradio sam dio, ali nikako ne mogu dobiti ispis maksimalne ocjene za svakog studenta i prosjeka za svaki predmet, dobijem ja mislim maksimalnu ocjenu prvog i prosjek prvog predmeta. Pretpostavljam da je problem kod brojaca i resetovanja ali nikako da skontam rjesenje. Evo mog koda: Code: #include <iostream> #include <cmath> using namespace std; void unos(int[][4], int, int); int max(int[][4],int,int,int); float prosjek(int[][4],int,int,float); int main () { const int red=5; const int kol=4; int mat[red][kol]; unos (mat, red, kol); for (int i=0; i<red; i++) { int maksimalni=0; cout<<"Maksimalna ocjena studenta "<<i+1<<" je: "<<max (mat, red, kol, maksimalni)<<endl; } for (int j=0; j<kol; j++) { float prospre=0; cout<<"Prosjek ocjena predmeta "<<j+1<<" je: "<<prosjek(mat, red, kol, prospre)<<endl; } system ("PAUSE"); } void unos (int mat[][4], int red, int kol) { for (int i=0; i<red; i++) { for (int j=0; j<kol; j++) { do{ cout<<"Unesite ["<<i+1<<"]["<<j+1<<"] clan niza: "; cin>>mat[i][j]; if (mat[i][j]<6||mat[i][j]>10) cout<<"Unijeli ste pogresnu ocjenu!"<<endl; } while (mat[i][j]<6||mat[i][j]>10); } } } int max (int mat[][4], int red, int kol, int max) { for (int i=0; i<red; i++) { max=0; for (int j=0; j<kol; j++) { if (mat[i][j]>max) max=mat[i][j]; } return max; } } float prosjek (int mat[][4], int red, int kol, float prospre) { for (int j=0; j<kol; j++) { prospre=0; float suma=0; int brojac=0; for (int i=0; i<red; i++) { suma+=mat[i][j]; brojac++; } prospre=suma/float(brojac); return prospre; } } |