Revision: 36363
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 21, 2010 04:15 by danacc
Initial Code
#include <iostream>
#include<cstring>
//#include "red_polje.h"
#include "red_pokazivac.h"
using namespace std;
red Q;
void unos(){
klijentiP novi;
cout<<"Unesi ime i prezime klijenta: ";
cin.ignore();
cin.getline(novi.ime_prez,40);
cout<<"Unesi godinu rodjenja: ";
cin>>novi.godina;
cout<<"Unesi stanje na racunu: ";
cin>>novi.stanje;
cout<<"u-Uplata/Isplata; p-Placanje racuna; k-kreditiranje"<<endl;
cout<<"Odaberite transakciju: ";
cin>>novi.transakcija;
EnQueueQ(novi, &Q);
};
void premjesti(){
red mladi;
red stariji;
InitQ(&mladi);
InitQ(&stariji);
klijentiP klijent = FrontQ(&Q);
while(1){
if(klijent.godina > 1945){
EnQueueQ(klijent, &mladi);
DeQueueQ(&Q);
}
else{
EnQueueQ(klijent, &stariji);
DeQueueQ(&Q);
}
if(IsEmptyQ(&Q)){
break;
}
klijent = FrontQ(&Q);
}
cout<<"\nIspis reda:\n";
if(!IsEmptyQ(&stariji)){
klijent = FrontQ(&stariji);
while(1){
EnQueueQ(klijent, &Q);
cout<<"\nIme i prezime: "<<klijent.ime_prez<<endl;
cout<<"Godina rodenja: "<<klijent.godina<<endl;
cout<<"Stanje na racunu: "<<klijent.stanje<<endl;
cout<<"Vrsta transakcije: "<<klijent.transakcija<<endl;
cout<<"------------------------"<<endl;
DeQueueQ(&stariji);
if(IsEmptyQ(&stariji)){
break;
}
klijent = FrontQ(&stariji);
}//while
}//if
if(!IsEmptyQ(&mladi)){
klijent = FrontQ(&mladi);
while(1){
EnQueueQ(klijent, &Q);
cout<<"\nIme i prezime: "<< klijent.ime_prez<<endl;
cout<<"Godina rodenja: "<< klijent.godina<<endl;
cout<<"Stanje na racunu: "<< klijent.stanje<<endl;
cout<<"Vrsta transakcije: "<< klijent.transakcija<<endl;
cout<<"------------------------"<<endl;
DeQueueQ(&mladi);
if(IsEmptyQ(&mladi)){
break;
}
klijent = FrontQ(&mladi);
}//while
}//if
};
void kredit(){
red pomocni;
InitQ(&pomocni);
klijentiP klijent = FrontQ(&Q);
while(1){
if(klijent.stanje < 100 && klijent.transakcija == 'k'){
DeQueueQ(&Q);
}else{
EnQueueQ(klijent, &pomocni);
DeQueueQ(&Q);
}
if(IsEmptyQ(&Q)){
break;
}
klijent = FrontQ(&Q);
}
cout<<"\nIspis reda: \n";
klijent = FrontQ(&pomocni);
while(1){
EnQueueQ(klijent, &Q);
cout<<"\nIme i prezime: "<< klijent.ime_prez<<endl;
cout<<"Godina rodenja: "<< klijent.godina<<endl;
cout<<"Stanje na racunu: "<< klijent.stanje<<endl;
cout<<"Vrsta transakcije: "<< klijent.transakcija<<endl;
cout<<"------------------------"<<endl;
DeQueueQ(&pomocni);
if(IsEmptyQ(&pomocni)){
break;
}
klijent = FrontQ(&pomocni);
}
};
void novi_red(){
klijentiP klijent = FrontQ(&Q);
DeQueueQ(&Q);
if(!IsEmptyQ(&Q)){
novi_red();
}
EnQueueQ(klijent, &Q);
cout<<"\nIme i prezime: "<< klijent.ime_prez<<endl;
cout<<"Godina rodenja: "<< klijent.godina<<endl;
cout<<"Stanje na racunu: "<< klijent.stanje<<endl;
cout<<"Vrsta transakcije: "<< klijent.transakcija<<endl;
cout<<"------------------------"<<endl;
return;
};
int main(){
int iz,n;
InitQ(&Q);
do{
cout<<"\n1. Dodaj klijenta\n";
cout<<"2. Pusti starije od 65 naprijed\n";
cout<<"3. Izbaci one koji ne mogu dobit kredit\n";
cout<<"4. Zamjeni salter\n";
cout<<"9. izlaz\nIzbor: ";
cin>>iz;
switch(iz){
case 1:
unos();
break;
case 2:
premjesti();
break;
case 3:
kredit();
break;
case 4: cout<<"\nObrnuti redoslijed: " << endl;
novi_red();
break;
case 9: cout<<"Kraj! ";
break;
default: cout<<"Pogresan izbor!\n";
}
}while(iz!=9);
system("pause");
return 0;
}
Initial URL
Initial Description
Initial Title
red_u_banci.cpp
Initial Tags
Initial Language
C++