#include <iostream>
//#include "red_pokazivac.h"
#include "red_polje.h"
#include <ctime>
#include <string.h>
#define BR_UK int(br-(br*0.3) + 0.5)
using namespace std;
telement *glavni_red = new telement;
telement *gl_pomocni = new telement;
telement *glavni2 = new telement;
telement *brzi = new telement;
telement* rek = new telement;
int br_klijenata = 0;
int brojac=0;
int br_obrisanih = 0;
int posto30 = 0;
int br = 0;
void generiranje(int ai[], int bi[],int ci[],int di[], int N, telement *glavni_red){
int Ci, Di;
srand((unsigned int)time(NULL));
for(int i = 0; i<N; i++){
ai[i] = (rand() % 401) + 100;
bi[i] = (rand() % 401) + 100;
ci[i] = rand() % 6;
di[i] = rand() % 4;
}
}//generiranje
void wait( int seconds) {
clock_t endwait;
endwait = clock () + seconds * CLOCKS_PER_SEC ;
while (clock() < endwait) {}
}
void ucitavanje(char ispisi[]){
system("cls");
cout<<ispisi<<"\n\n";
for(int i = 0; i<3; i++){
cout<<".";
wait(1),system("cls"), cout<<ispisi<<"\n\n";
cout<<" .";
wait(1),system("cls"), cout<<ispisi<<"\n\n";
cout<<" .";
wait(1),system("cls"), cout<<ispisi<<"\n\n";
}
system("cls");
}
void ispis_tecaja(){
cout<<"_________________________________________________\n"
<<"Red.br.\tZemlja\t\tValuta\t\tTecaj\t |\n"
<<"_________________________________________________|\n"
<<"_________________________________________________|\n"
<<"1.\tEMU\t\tEUR\t\t7,501656 |\n"
<<"2.\tSAD\t\tUSD\t\t5,732582 |\n"
<<"3.\tVel. Britanija\tGBP\t\t9,231672 |\n"
<<"4.\tSvicarska\tCHF\t\t6,174711 |\n"
<<"5.\tJapan\t\tJPY\t\t6,974392 |\n"
<<"_________________________________________________|\n\n";
}
void dodaj_zapis(int ai[], int bi[],int ci[],int di[], int N, telement *glavni_red){
char Cx[6][21] = {"Umirovljenik","Invalid","Trudnica","VIP klijent banke","Ostali klijent banke","Nije klijent banke"};
char Dx[4][9] = {"Uplata","Isplata","Placanje","Krediti"};
int brojac = 0, izbor;
float deviza = 0;
system("cls");
cout<<"Dodavanje zapisa o klijentima banke u red |\n"
<<"__________________________________________|\n";
while(N!=0){
tklijent *klijent = new tklijent;
klijent->ai = ai[brojac];
klijent->bi = bi[brojac];
strcpy(klijent->ci,Cx[ci[brojac]]);
strcpy(klijent->di,Dx[di[brojac]]);
klijent->prioritet = ci[brojac];
cout<<endl<<brojac+1<<". klijent\n"
<<"Prioritet: "
<<klijent->ci<<endl
<<"Transkakcija: "
<<klijent->di<<endl<<endl;
cout<<"Ime i prezime: "; cin.ignore(), cin.getline(klijent->pre_ime,30);
cout<<"Datum rodenja(dd.mm.gggg.): ", cin>>klijent->datum_znak;
klijent->datum_broj = atoi(klijent->datum_znak + strlen(klijent->datum_znak) - 5);
cout<<"Stanje na tekucem racunu(HRK): ", cin>>klijent->tekuci_racun;
ispis_tecaja();
cout<<"Devizni racun\n_________________________\nOdaberite redni broj za valutu: ", cin>>izbor;
if(izbor==1) cout<<"Stanje na deviznom racunu(EUR): ", cin>> deviza, klijent->devizni_racun = deviza * 7.501656;
else if(izbor==2) cout<<"Stanje na deviznom racunu(USD): ", cin>> deviza, klijent->devizni_racun = deviza*5.732582;
else if(izbor==3) cout<<"Stanje na deviznom racunu(GBP): ", cin>> deviza, klijent->devizni_racun = deviza*9.231672;
else if(izbor==4) cout<<"Stanje na deviznom racunu(CHF): ", cin>> deviza, klijent->devizni_racun = deviza*6.174711;
else if(izbor==5) cout<<"Stanje na deviznom racunu(JPY): ", cin>> deviza, klijent->devizni_racun = deviza*6.974392;
EnQueueQ(klijent, glavni_red);
brojac++;
N--;
system("cls");
}
}
void ispis(telement *glavni_red, telement *gl_pomocni){
if(IsEmptyQ(gl_pomocni)) return;
tklijent *klijent = new tklijent;
klijent = FrontQ(gl_pomocni);
cout<<"Ispis klijenata koji imaju na deviznom racunu vise od 10000 kuna |\n"
<<"_________________________________________________________________|\n\n";
while(1){
if(klijent->devizni_racun > 10000){
cout<<"Ime i prezime: "<<klijent->pre_ime<<endl
<<"Datum rodenja: "<<klijent->datum_znak<<endl
<<"Prioritet klijenta: "<<klijent->ci<<endl
<<"Transakcija koju klijent zeli obaviti: "<<klijent->di<<endl
<<"Stanje na tekucem racunu: "<<klijent->tekuci_racun<<" kuna\n"
<<"Stanje na deviznom racunu(preracunato u kune): "<<klijent->devizni_racun<<" kuna\n\n";
}
DeQueueQ(gl_pomocni);
if(IsEmptyQ(gl_pomocni)==1) break;
klijent = FrontQ(gl_pomocni);
}
}
void zaglavlje(){
cout<<" ____________________________________\n"
<<"| |\n"
<<"| PROGRAM ZA SIMULACIJU REDA U BANCI |\n"
<<"|____________________________________|\n";
}
void ispis2(telement *glavni_red){
if(IsEmptyQ(glavni_red)) return;
tklijent *klijent = new tklijent;
klijent = FrontQ(glavni_red);
cout<<"Ispis klijenata koji imaju na deviznom racunu vise od 10000 kuna |\n"
<<"_________________________________________________________________|\n\n";
while(1){
cout<<"Ime i prezime: "<<klijent->pre_ime<<endl
<<"Datum rodenja: "<<klijent->datum_znak<<endl
<<"Prioritet klijenta: "<<klijent->ci<<endl
<<"Transakcija koju klijent zeli obaviti: "<<klijent->di<<endl
<<"Stanje na tekucem racunu: "<<klijent->tekuci_racun<<" kuna\n"
<<"Stanje na deviznom racunu(preracunato u kune): "<<klijent->devizni_racun<<" kuna\n\n";
DeQueueQ(glavni_red);
if(IsEmptyQ(glavni_red)==1) break;
klijent = FrontQ(glavni_red);
}
}
void ispis3(int N, telement* glavni_red2, telement* glavni_red1){
if(IsEmptyQ(glavni_red2)) return;
tklijent *pomocna = new tklijent;
tklijent *pomocno_polje = new tklijent[N];
while(IsEmptyQ(glavni_red2)==0){
pomocna = FrontQ(glavni_red2);
if(strcmp(pomocna->ci,"")==0){DeQueueQ(glavni_red2);}
else{
pomocno_polje[br].ai = pomocna->ai, pomocno_polje[br].bi = pomocna->bi, strcpy(pomocno_polje[br].ci,pomocna->ci), strcpy(pomocno_polje[br].di, pomocna->di);
pomocno_polje[br].datum_broj = pomocna->datum_broj, strcpy(pomocno_polje[br].datum_znak,pomocna->datum_znak), pomocno_polje[br].devizni_racun = pomocna->devizni_racun;
strcpy(pomocno_polje[br].pre_ime, pomocna->pre_ime), pomocno_polje[br].prioritet = pomocna->prioritet, pomocno_polje[br].tekuci_racun = pomocna->tekuci_racun;
DeQueueQ(glavni_red2);
cout<<"Ime i prezime: "<<pomocna->pre_ime<<endl
<<"Datum rodenja: "<<pomocna->datum_znak<<endl
<<"Prioritet klijenta: "<<pomocna->ci<<endl
<<"Transakcija koju klijent zeli obaviti: "<<pomocna->di<<endl
<<"Stanje na tekucem racunu: "<<pomocna->tekuci_racun<<" kuna\n"
<<"Stanje na deviznom racunu(preracunato u kune): "<<pomocna->devizni_racun<<" kuna\n\n";
br++;
}
}
for(int i = 0; i<br; i++){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
EnQueueQ(pomoc,glavni_red1);
}
}
void iz_polja_u_red(tklijent novi[], int N, telement *red, bool u_i){
if(u_i == true){
tklijent *novi2 = new tklijent;
int i = 0;
while(IsEmptyQ(glavni_red)==0){
novi2 = FrontQ(glavni_red);
DeQueueQ(glavni_red);
novi[i].ai = novi2->ai, novi[i].bi = novi2->bi, strcpy(novi[i].ci,novi2->ci), strcpy(novi[i].di, novi2->di);
novi[i].datum_broj = novi2->datum_broj, strcpy(novi[i].datum_znak,novi2->datum_znak), novi[i].devizni_racun = novi2->devizni_racun;
strcpy(novi[i].pre_ime, novi2->pre_ime), novi[i].prioritet = novi2->prioritet, novi[i].tekuci_racun = novi2->tekuci_racun;
i++;
}
}
else{
for(int i2 = 0; i2<N; i2++){
tklijent *pomoc = new tklijent;
pomoc->ai = novi[i2].ai, pomoc->bi = novi[i2].bi, strcpy(pomoc->ci,novi[i2].ci), strcpy(pomoc->di, novi[i2].di);
pomoc->datum_broj = novi[i2].datum_broj, strcpy(pomoc->datum_znak,novi[i2].datum_znak), pomoc->devizni_racun = novi[i2].devizni_racun;
strcpy(pomoc->pre_ime, novi[i2].pre_ime), pomoc->prioritet = novi[i2].prioritet, pomoc->tekuci_racun = novi[i2].tekuci_racun;
EnQueueQ(pomoc,red);
}
}
}
void prioritet_preslozi(int N, telement *glavni_red, telement *gl_pomocni){
bool u_i = true;
char preslagivanje[] = {"Preslagivanje klijenata prema prioritetu!"};
int i = 0;
telement *pomocni = new telement;
tklijent *novi = new tklijent[N];
cout<<"Unos gotov!\n\n", wait(1);
ucitavanje(preslagivanje);
iz_polja_u_red(novi, N,glavni_red, u_i = true);
for(int i = 0; i<N; i++){
int j = i-1;
int pomocna = novi[i].prioritet;
tklijent pomocna2 = novi[i];
while(j>=0&&novi[j].prioritet > pomocna){
novi[j+1] = novi[j--];
novi[j+1] = pomocna2;
}
}
cout<<"Klijenti uspjesno preslozeni prema prioritetu!\n\n";
wait(1), system("cls");
iz_polja_u_red(novi, N,glavni_red,u_i =false);
iz_polja_u_red(novi,N,gl_pomocni,u_i =false);
delete novi;
}
int simulacija_brzih(int N, tklijent *pomocno_polje, telement *glavni_red, telement *brzi){
int br = 0;
char simulacija[] = {"Pokretanje simulacije reda brzih transakcija"};
if(IsEmptyQ(glavni_red)==1){
cout<<"Zapisi nisu dodani!\n";
return 0;}
ucitavanje(simulacija);
tklijent *pomocna = new tklijent;
while(IsEmptyQ(glavni_red)==0){
pomocna = FrontQ(glavni_red);
pomocno_polje[br].ai = pomocna->ai, pomocno_polje[br].bi = pomocna->bi, strcpy(pomocno_polje[br].ci,pomocna->ci), strcpy(pomocno_polje[br].di, pomocna->di);
pomocno_polje[br].datum_broj = pomocna->datum_broj, strcpy(pomocno_polje[br].datum_znak,pomocna->datum_znak), pomocno_polje[br].devizni_racun = pomocna->devizni_racun;
strcpy(pomocno_polje[br].pre_ime, pomocna->pre_ime), pomocno_polje[br].prioritet = pomocna->prioritet, pomocno_polje[br].tekuci_racun = pomocna->tekuci_racun;
DeQueueQ(glavni_red);
br++;
}
cout<<"STANJE GLAVNOG REDA\n__________________\n\n";
for(int i = 0; i<N; i++){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
if((strcmp(pomoc->di,"Placanje")==0)){}
else{
cout<<"Ime i prezime: "<<pomoc->pre_ime<<endl
<<"Datum rodenja: "<<pomoc->datum_znak<<endl
<<"Prioritet klijenta: "<<pomoc->ci<<endl
<<"Transakcija koju pomoc zeli obaviti: "<<pomoc->di<<endl
<<"Stanje na tekucem racunu: "<<pomoc->tekuci_racun<<" kuna\n"
<<"Stanje na deviznom racunu(preracunato u kune): "<<pomoc->devizni_racun<<" kuna\n\n";
EnQueueQ(pomoc,glavni_red);
}
}
cout<<"STANJE BRZOG REDA\n__________________\n\n";
for(int i = 0; i<N; i++){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
if(strcmp(pomoc->di,"Placanje")==0){
cout<<"Ime i prezime: "<<pomoc->pre_ime<<endl
<<"Datum rodenja: "<<pomoc->datum_znak<<endl
<<"Prioritet klijenta: "<<pomoc->ci<<endl
<<"Transakcija koju pomoc zeli obaviti: "<<pomoc->di<<endl
<<"Stanje na tekucem racunu: "<<pomoc->tekuci_racun<<" kuna\n"
<<"Stanje na deviznom racunu(preracunato u kune): "<<pomoc->devizni_racun<<" kuna\n\n";
EnQueueQ(pomoc,brzi);
}
}
}
void brisanje(int N,telement *glavni_red, telement* gl_pomocni2){
bool u_i = true;
int br = 0;
tklijent *pomocna = new tklijent;
tklijent *pomocno_polje = new tklijent[N];
while(IsEmptyQ(glavni_red)==0){
pomocna = FrontQ(glavni_red);
pomocno_polje[br].ai = pomocna->ai, pomocno_polje[br].bi = pomocna->bi, strcpy(pomocno_polje[br].ci,pomocna->ci), strcpy(pomocno_polje[br].di, pomocna->di);
pomocno_polje[br].datum_broj = pomocna->datum_broj, strcpy(pomocno_polje[br].datum_znak,pomocna->datum_znak), pomocno_polje[br].devizni_racun = pomocna->devizni_racun;
strcpy(pomocno_polje[br].pre_ime, pomocna->pre_ime), pomocno_polje[br].prioritet = pomocna->prioritet, pomocno_polje[br].tekuci_racun = pomocna->tekuci_racun;
DeQueueQ(glavni_red);
br++;
}
for(int i = 0; i<N; i++){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
if( ((strcmp(pomoc->ci,"Umirovljenik")==0) && (strcmp(pomoc->di,"Isplata")==0) && (pomoc->tekuci_racun>5000)) ||
((strcmp(pomoc->ci,"VIP klijent banke")==0) && (strcmp(pomoc->di,"Uplata")==0) && (pomoc->tekuci_racun<100) && (pomoc->datum_broj >= 1982))){br_obrisanih++;}
else{
EnQueueQ(pomoc,gl_pomocni2);
}
}
}
int brojac2 = 0;
int u_glavnom = 0;
void r(telement* glavni_red,telement* drugi_red, tklijent* pomocno_polje){
tklijent* p = new tklijent;
if(rekurzija==true){
if(brojac2 < BR_UK){
u_glavnom++;
p = FrontQ(glavni_red);
brojac2++;
DeQueueQ(glavni_red);
r(glavni_red,drugi_red, pomocno_polje);
}
}
else{
p = FrontQ(glavni_red);
if(brojac2 < BR_UK){
u_glavnom++;
brojac2++;
DeQueueQ(glavni_red);
r(glavni_red,drugi_red, pomocno_polje);
}
}
if(brojac2==BR_UK){
int bro = 0;
while(brojac2 < br){
posto30++;
tklijent* p2 = new tklijent;
p2 = FrontQ(glavni_red);
pomocno_polje[bro].ai = p2->ai, pomocno_polje[bro].bi = p2->bi, strcpy(pomocno_polje[bro].ci,p2->ci), strcpy(pomocno_polje[bro].di, p2->di);
pomocno_polje[bro].datum_broj = p2->datum_broj, strcpy(pomocno_polje[bro].datum_znak,p2->datum_znak), pomocno_polje[bro].devizni_racun = p2->devizni_racun;
strcpy(pomocno_polje[bro].pre_ime, p2->pre_ime), pomocno_polje[bro].prioritet = p2->prioritet, pomocno_polje[bro].tekuci_racun = p2->tekuci_racun;
bro++;
DeQueueQ(glavni_red);
brojac2++;
}
}
if(rekurzija==true){
if(strcmp(p->pre_ime,"")==0){}
else
EnQueueQ(p,glavni_red);
}
else
EnQueueQ(p,glavni_red);
}
void zadnji(tklijent* pomocno_polje, telement* novi_red, int n_prebacenih30){
for(int i = posto30 - 1; i>=0; i--){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
EnQueueQ(pomoc,novi_red);
}
}
void preslozi_glavni(telement* glavni_red, tklijent* pomocno_polje){
int br = 0;
tklijent *pomocna = new tklijent;
while(IsEmptyQ(glavni_red)==0){
pomocna = FrontQ(glavni_red);
pomocno_polje[br].ai = pomocna->ai, pomocno_polje[br].bi = pomocna->bi, strcpy(pomocno_polje[br].ci,pomocna->ci), strcpy(pomocno_polje[br].di, pomocna->di);
pomocno_polje[br].datum_broj = pomocna->datum_broj, strcpy(pomocno_polje[br].datum_znak,pomocna->datum_znak), pomocno_polje[br].devizni_racun = pomocna->devizni_racun;
strcpy(pomocno_polje[br].pre_ime, pomocna->pre_ime), pomocno_polje[br].prioritet = pomocna->prioritet, pomocno_polje[br].tekuci_racun = pomocna->tekuci_racun;
DeQueueQ(glavni_red);
br++;
}
for(int i = u_glavnom-1; i>=0; i--){
tklijent *pomoc = new tklijent;
pomoc->ai = pomocno_polje[i].ai, pomoc->bi = pomocno_polje[i].bi, strcpy(pomoc->ci,pomocno_polje[i].ci), strcpy(pomoc->di, pomocno_polje[i].di);
pomoc->datum_broj = pomocno_polje[i].datum_broj, strcpy(pomoc->datum_znak,pomocno_polje[i].datum_znak), pomoc->devizni_racun = pomocno_polje[i].devizni_racun;
strcpy(pomoc->pre_ime, pomocno_polje[i].pre_ime), pomoc->prioritet = pomocno_polje[i].prioritet, pomoc->tekuci_racun = pomocno_polje[i].tekuci_racun;
EnQueueQ(pomoc,glavni_red);
}
}
void izbornik(){
bool generirano = false, zapisi_dodani=false;
int N = 0, izbor, redni_br = 0;
zaglavlje();
cout<<"\n Broj klijenata: ";
cin>>N, system("cls");
tklijent *pomocno_polje=new tklijent[N];
tklijent *pomocno_polje_n = new tklijent[N];
tklijent *pomocno_polje_n2 = new tklijent[N];
int *ai = new int[N];
int *bi = new int[N];
int *ci = new int[N];
int *di = new int[N];
do{
zaglavlje();
cout<<" _________________________________________________________\n";
if(generirano==true){
if(zapisi_dodani==false){
cout<<"| 1. Niz od N cetvorki je generiran! \t\t\t |\n| 2. Dodavanje zapisa o klijentima \t\t\t |\n| 3. Simulacija reda brzih transkakcija (placanje racuna) |\n| 4. Brisanje klijenata \t\t\t\t |\n| 5. Simulacija novog reda \t\t\t\t |\n";
}
else cout<<"| 1. Niz od N cetvorki je generiran! \t\t\t |\n| 2. Zapisi o klijentima su dodani! \t\t\t |\n| 3. Simulacija reda brzih transkakcija (placanje racuna) |\n| 4. Brisanje klijenata \t\t\t\t |\n| 5. Simulacija novog reda \t\t\t\t |\n";
}
if(generirano==false && zapisi_dodani==false) cout<<"| 1. Generiranje niza od N cetvorki \t\t\t |\n| 2. Dodavanje zapisa o klijentima \t\t\t |\n| 3. Simulacija reda brzih transkakcija (placanje racuna) |\n| 4. Brisanje klijenata \t\t\t\t |\n| 5. Simulacija novog reda \t\t\t\t |\n";
cout<<"|_________________________________________________________|\n";
cin>>izbor;
switch(izbor){
case 1:
generiranje(ai, bi, ci, di, N, glavni_red);
generirano = true;
system("cls");
break;
case 2:
if(zapisi_dodani == true){
system("cls");
break;}
if(generirano) dodaj_zapis(ai, bi, ci, di, N, glavni_red);
else{
system("cls"), cout<<"Niz od N cetvorki nije generiran!\n";
break;}
prioritet_preslozi(N, glavni_red, gl_pomocni);
ispis(glavni_red, gl_pomocni);
zapisi_dodani = true;
break;
case 3:
simulacija_brzih(N, pomocno_polje, glavni_red, brzi);
break;
case 4:
system("cls");
cout<<"BRISANJE\n\n";
cout<<" _____________________________________________________________\n\n";
cout<<"| PRIORITET | TRANSAKCIJA | TEKUCI RECUN | GODINE |\n"
<<"|_________________|_______________|________________|__________|\n"
<<"| vip | uplata | <100kn | <30 |\n"
<<"| umirovljenici | isplata | >5000kn | - |\n"
<<"|_________________|_______________|________________|__________|\n\n";
brisanje(N,glavni_red, glavni2);
ispis3(N, glavni2, glavni_red);
break;
case 5:
system("cls");
char simulacija[] = {"Pokretanje simulacije novog reda"};
ucitavanje(simulacija);
r(glavni_red, rek, pomocno_polje_n);
cout<<"STANJE GLAVNOG REDA\n"
<<"___________________\n\n";
preslozi_glavni(glavni_red, pomocno_polje_n2);
ispis2(glavni_red);
cout<<"\n\nSTANJE NOVOG REDA\n"
<<"___________________\n\n";
zadnji(pomocno_polje_n, rek, N);
ispis2(rek);
break;
}
}while(izbor!=9);
}
int main(){
InitQ(glavni_red);
InitQ(gl_pomocni);
InitQ(brzi);
InitQ(glavni2);
InitQ(rek);
izbornik();
system("pause");
return 0;
}