/ Published in: C++
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
//Nikola Karimovic //Strukture podataka zadatak 3 //Glavni dio programa #include<iostream> #include<cstring> #include "implementacija_pokazivaci.h" using namespace std; int z=0; void ispis_stanja(red *R){ tbanka b; int broj=z; while(broj){ b=FrontQ(R); DeQueueQ(R); cout<<"\n Ime i prezime klijenta : "<<b.ime_prezime<<endl; cout<<" Godine rodjenja : "<<b.godine<<endl; cout<<" Stanje na bankovnom racunu : "<<b.racun<<" HRK "<<endl; cout<<" Vrsta zeljene transakcije : "<<b.transakcije<<endl; EnQueueQ(b,R); broj--; } } void dodavanje_zapisa(red *R){ char jos = 'd'; tbanka b; int t; cout<<"Dodavanje klijenata u red... "<<endl; while (jos == 'd' || jos == 'D'){ cout<<"\n Ime i prezime klijenta : "; cin.ignore(); cin.getline(b.ime_prezime, 50); cout<<" Godina rodjenja : "; cin>>b.godine; cout<<" Stanje bankovnog racuna (u HRK) : "; cin>>b.racun; cout<<" Odabrati vrstu transakcije : "<<endl; cout<<" 1. Uplata/Isplata "<<endl; cout<<" 2. Placanje racuna "<<endl; cout<<" 3. Kredit "<<endl; cout<<" Vas izbor : "; cin>>t; if(t==1) strcpy(b.transakcije, "Uplata/Isplata"); if(t==2) strcpy(b.transakcije, "Placanje racuna"); if(t==3) strcpy(b.transakcije, "Kredit"); EnQueueQ(b,R); z++; cout << "\nZelite dodati jos klijenata (d/n) ? "; cin >> jos; } } void pomicanje(red *R){ red *pom = InitQ(pom); tbanka b; int broj=z; while(broj){ b=FrontQ(R); DeQueueQ(R); if(b.godine >1945) EnQueueQ(b,pom); else{ EnQueueQ(b,R);} broj--; } while(!IsEmptyQ(pom)){ b=FrontQ(pom); DeQueueQ(pom); EnQueueQ(b,R); } ispis_stanja(R); } void izbacivanje(red *R){ if(IsEmptyQ(R)==0){ red *pom=InitQ(pom); tbanka b; int broj=z; while(broj){ b=FrontQ(R); DeQueueQ(R); if(b.racun<100 && strcmp(b.transakcije, "kredit")==0 ) z--; else EnQueueQ(b,R); broj--; } ispis_stanja(R); } else cout<<"Red je prazan"<<endl; } void otvaranje(red *R){ if(IsEmptyQ(R)==0){ tbanka b; b=FrontQ(R); DeQueueQ(R); if(!IsEmptyQ(R)) otvaranje(R); EnQueueQ(b,R); } else cout<<"Red je prazan"<<endl; } int main(){ int izbor; red *R = InitQ(R); do{ cout<<"============IZBORNIK==============="<<endl; cout<<"\n1. Dodavanje novih zapisa o klijentu "<<endl; cout<<"2. Izbacivanje klijenata "<<endl; cout<<"3. Zatvaranje/Otvaranje saltera "<<endl; cout<<"9. Izlaz ih programa "<<endl; cout<<" \nVas izbor ? "<<endl; cout<<"==================================="<<endl; cin>>izbor; cout<<endl; switch(izbor){ case 1: { dodavanje_zapisa(R); pomicanje(R); break; } case 2: { izbacivanje(R); break; } case 3: { otvaranje(R); ispis_stanja(R); break; } case 9: { cout<<" Izlazim iz programa "<<endl; break; } default: cout<<" Pogresan unos ! "<<endl; break; } }while(izbor!=9); system("pause"); return 0; }