ovo je bio samo dio programa, Inače cijeli program je realiziran u obliku izbornika, jer program radi vise funkcija. Ovo je cijeli programu izborniku na kraju pise sta program radi)
Code:
#include <iostream>
#include <fstream>
using namespace std;
struct stud{
int mbr;
char prez_ime[35];
int sifra;
int ocjena;
};
stud *studenti=new stud;
int n;
void prog1(){
system("cls");
cout<<"\nUnesi broj studenata: ";
cin>>n;
studenti=new stud[n];
cout<<"\nUnos studenata:"<<endl;
for(int i=0;i<n;i++){
cout<<"Student br. "<<i+1<<": "<<endl;
cout<<"Prezime i ime: ";
cin.ignore();
cin.getline(studenti[i].prez_ime,sizeof(studenti[i].prez_ime));
cout<<"Maticni broj: ";
cin>>studenti[i].mbr;
cout<<"Sifra mentora: ";
cin>>studenti[i].sifra;
cout<<"Ocjena: ";
cin>>studenti[i].ocjena;
}
}
void prog2(){
system("cls");
//sortiramo uzlazno
int sort=0;
stud temp;
while(sort==0){
sort=1;
for(int i=1;i<n;i++){
if(studenti[i-1].sifra>studenti[i].sifra){
temp=studenti[i-1];
studenti[i-1]=studenti[i];
studenti[i]=temp;
sort=0;
}
}
}
}
void prog3(){
system("cls");
cout<<"\nIspis studenata uzlazno prema sifri mentora:"<<endl;
cout<<"\n\nPrzime i ime studenta\tSifra mentora\tOcjena rada"<<endl;
for(int i=0;i<n;i++){
cout<<studenti[i].prez_ime<<"\t"<<studenti[i].sifra<<"\t"<<studenti[i].ocjena;
if(studenti[i].ocjena==1){
cout<<" (nedovoljan)";
}
else if(studenti[i].ocjena==2){
cout<<" (dovoljan)";
}
else if(studenti[i].ocjena==3){
cout<<" (dobar)";
}
else if(studenti[i].ocjena==4){
cout<<" (vrlo dobar)";
}
else if(studenti[i].ocjena==5){
cout<<" (odlican)";
}
cout<<endl;
}
cout<<endl;
}
void prog4(){
system("cls");
fstream dat;
dat.open ("studenti.dat",ios::out | ios::binary);
for(int i=0;i<n;i++){
dat.write ((char*)&studenti[i],sizeof(stud));
}
dat.close();
dat.open ("studenti.dat",ios::in | ios::binary);
cout<<"\n\nIspis iz datoteke:"<<endl;
stud buff;
while(1){
dat.read ((char*)&buff,sizeof(stud));
if(dat.eof()){
break;
}
else{
cout<<buff.mbr<<"\t"<<buff.prez_ime<<"\t"<<buff.sifra<<"\t"<<buff.ocjena<<endl;
}
}
dat.close();
cout<<endl;
}
void main(){
int izbor;
do{
system("cls");
cout<<"\n1 Unos podataka"<<endl;
cout<<"2 Sort prema sifri"<<endl;
cout<<"3 Ispis prema sifri"<<endl;
cout<<"4 Upis u datoteku i ispis iz datoteke"<<endl;
cout<<"5 Izlaz iz programa"<<endl;
cout<<"\nOdaberi: ";
cin>>izbor;
switch(izbor){
case 1:
prog1();
system("pause");
break;
case 2:
prog2();
system("pause");
break;
case 3:
prog3();
system("pause");
break;
case 4:
prog4();
system("pause");
break;
}
}while(izbor>0 && izbor<5);
}
}
}