Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<iomanip>
- #include<string.h>
- using namespace std;
- double m;//ukupni bodovi
- double um;//bodovi za prolaznost
- double max=0;
- double min=INT_MAX;
- double max2=INT_MIN;
- int br=0;
- int br2=0;
- struct prosjek{
- double pp,dp;//prva parcijala,druga parcijala
- };
- struct pamtime{
- string ime1,ime2;
- };
- struct student{
- string predmet;
- string ime;
- string prezime;
- prosjek unos;
- pamtime pi;
- };
- student unesi_podatke(){
- student rez;
- cout<<"Unesite predmet: ";cin>>rez.predmet;
- rez.predmet[0]=toupper(rez.predmet[0]);
- cout<<"Unesite ime: ";cin>>rez.ime;
- rez.ime[0]=toupper(rez.ime[0]);
- cout<<"Unesite prezime: ";cin>>rez.prezime;
- cout<<"Unesite bodove sa [ 1.] parcijalnog ispita: ";cin>>rez.unos.pp;
- cout<<"Unesite bodove sa [ 2.] parcijalnog ispita: ";cin>>rez.unos.dp;
- return rez;
- }
- void ispisi_max(student A[],int a){
- int maxI;
- for(int i=0;i<a;i++){
- if(A[i].unos.pp+A[i].unos.dp>::max){
- ::max=A[i].unos.pp+A[i].unos.dp;
- A->pi.ime1=A[i].ime;
- ::br++;
- for(int i=1;i<br;i++){
- if(i==br){
- maxI=i;
- A->pi.ime1=A[maxI].ime;
- }
- }
- }
- }
- cout<<"Student sa maximalnim brojem bodova je "<<A->pi.ime1<<" i ima ukupno ["<<::max<<"] bodova";
- }
- void ispisi_min(student A[],int a){
- int minI;
- for(int i=0;i<a;i++){
- if(A[i].unos.pp+A[i].unos.dp<(::min)){
- ::min=A[i].unos.pp+A[i].unos.dp;
- A->pi.ime2=A[i].ime;
- ::br2++;
- for(int i=1;i<br2;i++){
- if(i==br2){
- minI=i;
- A->pi.ime2=A[minI].ime;
- }
- }
- }
- }
- cout<<"Student sa minimalnim brojem bodova je "<<A->pi.ime2<<" i ima ukupno ["<<::min<<"] bodova";
- }
- void ispisi_polozili(student A[],int a){
- cout<<"Studenti koji su zadovoljili kriterije su: ";
- for(int i=0;i<a;i++){
- if(A[i].unos.pp+A[i].unos.dp>um){
- cout<<A[i].ime<<" ";
- }
- }
- }
- void ispisi_nisupolozili(student A[],int a){
- cout<<"Studenti koji nisu zadovoljili kriterije su: ";
- for(int i=0;i<a;i++){
- if(A[i].unos.pp+A[i].unos.dp<um)
- cout<<A[i].ime<<" ";
- }
- }
- void rotiraj(student &x,student &y){
- student temp=x;
- x=y;
- y=temp;
- }
- void sortiraj(student A[],int a){
- for(int i=0;i<a-1;i++){
- for(int j=0;j<a-1;j++){
- if((A[j].unos.pp+A[j].unos.dp)<(A[j+1].unos.pp+A[j+1].unos.dp)){
- rotiraj(A[j],A[j+1]);
- }
- }
- }
- }
- void ispisi_sortirano(student A[],int a){
- cout<<"===================================\n";
- for(int i=0;i<a;i++){
- cout<<" "<<i+1<<". "<<A[i].ime<<" "<<A[i].prezime<<" "<<(A[i].unos.pp+A[i].unos.dp)<<" [BODA]"<<endl;
- }
- cout<<"===================================\n";
- }
- void ispisi_prolaznost(student A[], int a){
- float prolaznost;
- float br3=0;
- for(int i=0;i<a;i++){
- if(A[i].unos.pp+A[i].unos.dp>um){
- br3++;
- }
- }
- prolaznost=(br3/a)*100;
- cout <<"Prolaznost iznosi ["<<prolaznost<<"%]";
- }
- void ispisi_studenta(student A){
- cout<<"================================\n";
- cout<<" "<<A.ime<<" "<<A.prezime<<" "<<(A.unos.pp+A.unos.dp)<<" [BODA]"<<endl;
- cout<<"================================\n";
- }
- void pretraga_po_imenu(student *A, char *B, int a){
- student Uneseni;
- for(int i=0;i<a;i++){
- int n = A[i].ime.length();
- char char_array[n + 1];
- strcpy(char_array, A[i].ime.c_str());
- if(strcmp(char_array, B)==0){
- Uneseni =A[i];
- }
- }
- ispisi_studenta(Uneseni);
- }
- void pretraga_po_predmetu(student *A, char *B, int a){
- student Predmet;
- for(int i=0;i<a;i++){
- int m = A[i].predmet.length();
- char predmet_array[m + 1];
- strcpy(predmet_array, A[i].predmet.c_str());
- if(strcmp(predmet_array, B)==0){
- Predmet = A[i];
- }
- }
- }
- void pretraga_po_predmetu_isti_predmet(student *A, char *B, int a){
- student Predmet;
- cout<<"===================================\n";
- for(int i=0;i<a;i++){
- int m = A[i].predmet.length();
- char predmet_array[m + 1];
- strcpy(predmet_array, A[i].predmet.c_str());
- if(strcmp(predmet_array, B)==0){
- Predmet = A[i];
- cout<<" "<<Predmet.ime<<" "<<Predmet.prezime<<" "<<(Predmet.unos.pp+Predmet.unos.dp)<<" [BODA]"<<endl;
- }
- }
- cout<<"===================================\n";
- }
- int main(){
- int n;
- cout<<"==========================\n";
- cout<<"Unesite broj studenata: ";
- cin>>n;
- cout<<"==========================\n";
- cout<<endl;
- cout<<"----------------------------------------------------------------------\n";
- cout<<"[UKUPNI BROJ BODOVA MORA BITI VECI OD 55% DA BI STUDENT POLOZIO ISPIT]\n\n";
- cout<<"Unesite ukupan broj bodova [ 1.] i [ 2.] parcijalnog ispita: ";
- cin>>m;
- cout<<endl;
- um=m/1.8;
- cout<<" [UKUPNI BROJ BODOVA MORA BITI VECI OD "<<um<<"]\n";
- cout<<"----------------------------------------------------------------------\n";
- cout<<endl;
- student s[30];
- for(int i=0;i<n;i++){
- cout<<"Unesite podatke o "<<i+1<<". studentu:\n";
- s[i]=unesi_podatke();
- cout<<endl;
- }
- int izbor;
- cout << "------------------------" << endl << "\tMENU" << endl << "------------------------" << endl;
- cout << "ID\tOPTION" << endl;
- cout << "1)\tStudent sa maksimalnim brojem bodova" << endl << "2)\tStudent sa minimalnim brojem bodova" << endl;
- cout << "3)\tStudenti koji su polozili predmet"<<endl<<"4)\tStudenti koji nisu polozili predmet"<<endl;
- cout << "5)\tSortiranji niz studenata po broju bodova"<<endl<<"6)\tUnesi nove studente"<<endl<<"7)\tIspisi podataka o studentu na osnovu unesenog predmeta i imena\n"<<"8)\tSortirani niz studenata po broju bodova na osnovu unesenog predmeta\n"<<"9)\tProlaznost[%]"<<endl;
- cout << "10)\tKraj";
- cout << endl << "---Odaberite opciju: "; cin >> izbor;cout<<endl;
- do{
- if(izbor==1){
- ispisi_max(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==2){
- ispisi_min(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==3){
- ispisi_polozili(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==4){
- ispisi_nisupolozili(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==5){
- sortiraj(s,n);
- ispisi_sortirano(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==6){
- cout<<"Unesite podatke o novom studentu:\n";
- s[n]=unesi_podatke();
- n=n+1;
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==7){
- char pretraga[10];
- char clas[10];
- cout<<"Unesite predmet: ";
- cin>>clas;
- clas[0]=toupper(clas[0]);
- pretraga_po_predmetu(s, clas, n);
- cout <<"Unesite ime za ispis: ";
- cin>>pretraga;
- pretraga[0]=toupper(pretraga[0]);
- pretraga_po_imenu(s, pretraga, n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==8){
- char clas2[10];
- cout<<"Unesite predmet: ";
- cin>>clas2;
- clas2[0]=toupper(clas2[0]);
- sortiraj(s,n);
- pretraga_po_predmetu_isti_predmet(s,clas2,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- if(izbor==9){
- ispisi_prolaznost(s,n);
- cout << endl << endl << "---Odaberite opciju: "; cin >> izbor;
- }
- } while(izbor!=10);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement