/ Published in: C++
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
#include<iostream> #include<conio.h> #include "red_pokazivac.h" //#include "red_polje.h" using namespace std; int brojac=0; void dodaj_klijenta(tred *Q) { tklijent novi; cout << "Ime: "; cin.ignore(); cin.getline(novi.ime,20); cout << "Prezime: "; cin.getline(novi.prez,20); cout << "Godina rodjenja: "; cin >> novi.god; cout << "Stanje racuna: "; cin >> novi.stanje; cout << "Vrsta transakcije: "<<endl; cout << "('u' = uplate/isplate,'p' = placanje racuna,'k' = krediti): "<<endl; cout << "Vas izbor je: "; do{ cin >> novi.vrsta; if((novi.vrsta != 'u') && (novi.vrsta != 'p') && (novi.vrsta != 'k')) cout<<"Pogresan unos\nVas izbor: "; }while((novi.vrsta != 'u') && (novi.vrsta != 'p') && (novi.vrsta != 'k')); EnQueueQ(novi, Q); cout<<"--------------------------------------------------------------------"<<endl<<endl; brojac++; }; void ispis_klijenata(tred *Q) { cout<<"Ispis klijenata u redu"<<endl; cout<<"--------------------------------------------------------------------"<<endl; tklijent novi; int br=brojac; while (br) { novi = FrontQ(Q); DeQueueQ(Q); cout << "Ime: " << novi.ime << endl; cout << "Prezime: "<< novi.prez << endl; cout << "Godina rodjenja: " << novi.god << endl; cout << "Stanje na racunu: " << novi.stanje << endl; if(novi.vrsta == 'u') cout<<"Vrsta transakcije: Uplata/Isplata"<<endl; if(novi.vrsta == 'p') cout<<"Vrsta transakcije: Placanje racuna"<<endl; if(novi.vrsta == 'k') cout<<"Vrsta transakcije: Kreditiranje"<<endl; cout<<"--------------------------------------------------------------------"<<endl; EnQueueQ(novi,Q); br--; }; }; void stari_klijent(tred *Q) { tred *pomocni = InitQ(pomocni); tklijent novi; int br=brojac; while (br) { novi = FrontQ(Q); DeQueueQ(Q); if (novi.god > 1945) EnQueueQ(novi,pomocni); else EnQueueQ(novi,Q); br--; }; while (!IsEmptyQ(pomocni)) { novi = FrontQ(pomocni); DeQueueQ(pomocni); EnQueueQ(novi,Q); }; ispis_klijenata(Q); }; void nemogu(tred *Q) { tred *pomocni = InitQ(pomocni); tklijent novi; int br=brojac; while (br) { novi = FrontQ(Q); DeQueueQ(Q); if (!(novi.stanje < 100 && novi.vrsta == 'k')) EnQueueQ(novi,Q); else brojac--; br--; }; ispis_klijenata(Q); }; void otvaranje_saltera(tred *Q) { tklijent novi; novi = FrontQ(Q); DeQueueQ(Q); if (!IsEmptyQ(Q)) otvaranje_saltera(Q); EnQueueQ(novi,Q); }; //MAIN PROGRAM int main(){ bool ima = false; tred *Q = InitQ(Q); int zapis; char iz; do{ system("cls"); cout<<"---------------------------IZBRONIK---------------------------------"<<endl; cout<<"--------------------------------------------------------------------"<<endl; cout<<"1. Dodavanje zapisa o klijentima banke u red"<<endl; cout<<"2. Premjesti klijente starije od 65 godine na pocetak reda"<<endl; cout<<"3. Izbaci iz reda sve klijente koji imaju < od 100 kn, i zele kredit"<<endl; cout<<"4. Simuliranje otvaranja/zatvaranja saltera"<<endl; cout<<"0. Izlaz iz programa"<<endl; cout<<"--------------------------------------------------------------------"<<endl; cout<<"--------------------------------------------------------------------"<<endl; cout<<"Vas izbor je: "; iz=getch(); cout<<iz<<endl; switch(iz){ case '1': cout<<"Kolko klijenata zelite dodati (1-15): "; cin>>zapis; if((zapis!=0)&&(zapis<16)){ for (int i=0;i<zapis;i++){ cout<<"Ukupno zapisa: "<<i<<endl; cout<<"Preostalo: "<<(int)zapis-(i+1)<<" zapisa"<<endl; dodaj_klijenta(Q); }} else break; ima = true; break; case '2': if(!ima){ cout<<"Nema podataka, unesite podatke!!!"<<endl; break; } stari_klijent(Q); break; case '3': if(!ima){ cout<<"Nema podataka, unesite podatke!!!"<<endl; break; } nemogu(Q); break; case '4': if(!ima){ cout<<"Nema podataka, unesite podatke!!!"<<endl; break; } otvaranje_saltera(Q); ispis_klijenata(Q); break; case '0': break; default: cout<<"Nepostojeci izbor\nPovratak na izbronik"<<endl<<endl;; } system("pause"); }while(iz != '0'); return 0; };