/ Published in: C++
Expand |
Embed | Plain Text
#include<iostream> #include<cstring> #include "red_polje.h" using namespace std; int br=0; red Q; void unos(){ char trans; klijent novi; cout << "\nIme i Prezime: "; cin.ignore(); cin.getline(novi.preime, 50); cout << "Godina: "; cin >> novi.god; cout << "Stanje na racunu: "; cin >> novi.stanje; opet:cout << "Transakcije: " << endl; cout << "U - uplata/isplata \t\t P - placanje racuna \t\t K - krediti " << endl; cout << "Obaviti: "; cin >> novi.trans; if(novi.trans!='U' && novi.trans!='P' && novi.trans!='K'){ cout << "Nema takve transakcije" << endl; goto opet;} EnQueueQ(novi, &Q); br++; } void zamjena(){ klijent klijent; red pomocni; InitQ(&pomocni); for(int i=0;i<br;i++){ klijent = FrontQ(&Q); DeQueueQ(&Q); if(klijent.god > 1945) EnQueueQ(klijent, &pomocni); else EnQueueQ(klijent, &Q);} while(!IsEmptyQ(&pomocni)){ klijent = FrontQ(&pomocni); DeQueueQ(&pomocni); EnQueueQ(klijent, &Q); } cout << "Stanje na redu: " << endl; for(int i=0; i<br; i++){ klijent = FrontQ(&Q); DeQueueQ(&Q); EnQueueQ(klijent, &Q); cout << endl << "Ime i prezime: " << klijent.preime; cout << endl << "Godina: " <<klijent.god; cout << endl << "Vrsta transakcije: "; if(klijent.trans == 'U') cout << "Uplata/isplata"<< endl; else if(klijent.trans == 'P') cout << "Placanje racuna" << endl; else if(klijent.trans == 'K') cout << "Krediti" << endl; cout << endl << "Stanje na racunu: " <<klijent.stanje<< endl; cout << endl; }} void kredit(){ klijent klijent; int broj = br; for(int i=0;i<broj; i++){ klijent = FrontQ(&Q); DeQueueQ(&Q); --br; if(!(klijent.stanje<100 && klijent.trans=='K')){ ++br; EnQueueQ(klijent, &Q); }} if(IsEmptyQ(&Q)){ cout << endl << "red je prazan" << endl; return; } cout << endl << "Stanje na redu: " << endl; for(int i=0; i<br; i++){ klijent = FrontQ(&Q); DeQueueQ(&Q); EnQueueQ(klijent, &Q); cout << endl << "Ime i prezime: " << klijent.preime; cout << endl << "Godina: " <<klijent.god; cout << endl << "Vrsta transakcije: "; if(klijent.trans == 'U') cout << "Uplata/isplata" << endl; else if(klijent.trans == 'P') cout << "Placanje racuna" << endl; else if(klijent.trans == 'K') cout << "Krediti" << endl; cout << "Stanje na racunu: " <<klijent.stanje<< endl; cout << endl;} } void salteri(){ klijent klijent = FrontQ(&Q); DeQueueQ(&Q); if(!IsEmptyQ(&Q)){ salteri(); } EnQueueQ(klijent, &Q); cout<<"\nIme i prezime: "<< klijent.preime<<endl; cout<<"Godina rodenja: "<< klijent.god<<endl; cout<<"Stanje na racunu: "<< klijent.stanje<<endl; cout<<"Vrsta transakcije: "<< klijent.trans<<endl; cout<<endl; return; } int main(){ int iz; InitQ(&Q); do{ cout << "-------------Izbor----------------" << endl; cout << "1. Dodavanje klijenata" << endl; cout << "2. Pustanje starijih od 65 na pocetak" << endl; cout << "3. Izbacivanje klijenata s manje od 100kn" << endl; cout << "4. Zamjena saltera" << endl; cout << "9. Izlaz" << endl; cout << "-----------------------------------" << endl; cout << "Izbor: "; cin >> iz; switch(iz){ case 1:unos(); break; case 2:zamjena(); break; case 3:kredit(); break; case 4: cout << "Stanje na novom salteru:" << endl; salteri(); break; } }while(iz!=9); system("pause"); return 0; }
You need to login to post a comment.
