Revision: 36391
Updated Code
at November 21, 2010 09:12 by kresimir20
Updated Code
#include <cstdlib>
#include "red_polje.h"
//#include "red_pokazivac.h"
using namespace std;
int broj=0;
void dodaj_zapis(red *Q) {
zapis klijent;
int A,B;
cout << "Koliko klijenata zelite unijeti? ";
cin >> A;
for(int i=0;i<A;i++) {
cin.ignore();
cin.clear();
cout << "Ime i prezime: ";
getline(cin,klijent.preime,'\n');
cout << "Godina rodjenja: ";
cin >> klijent.god;
cout << "Stanje na racunu: ";
cin >> klijent.stanje_racuna;
do {
cout << "VRSTA TRANSAKCIJE:\n1. uplate/isplate\n2. placanje racuna\n3. krediti" << endl;
cin >> B;
} while(B<1&&B>3);
if(B==1)
klijent.transakcija=1;
if(B==2)
klijent.transakcija=2;
if(B==3)
klijent.transakcija=3;
EnQueueQ(klijent,Q);
cout << "Klijent je dodan u red!" << endl;
broj++;
}
};
void prednost_umirovljenici(red *Q,red *stariji) {
if (!IsEmptyQ(Q)) {
int br_unosa=broj;
while (br_unosa!=0) {
zapis pom=FrontQ(Q);
DeQueueQ(Q);
if (pom.god>1945)
EnQueueQ(pom,stariji);
else
EnQueueQ(pom,Q);
br_unosa--;
}
while (!IsEmptyQ(stariji)) {
zapis umirovljenik=FrontQ(stariji);
DeQueueQ(stariji);
EnQueueQ(umirovljenik,Q);
}
cout << endl;
cout << "Ispis stanja reda:" << endl;
while (br_unosa!=broj) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
cout << endl;
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje na racunu: " << klijent.stanje_racuna << endl;
if (klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
EnQueueQ (klijent,Q);
br_unosa++;
}
}
else cout << "Red je prazan!" << endl;
};
void krediti100(red *Q) {
if (!IsEmptyQ(Q)) {
int stanje_reda=broj;
while (stanje_reda!=0) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
if (klijent.stanje_racuna<100&&klijent.transakcija==3)
broj--;
else EnQueueQ(klijent,Q);
stanje_reda--;
}
while (broj!=stanje_reda) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
cout << endl;
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje racuna: " << klijent.stanje_racuna << endl;
if(klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
EnQueueQ(klijent,Q);
stanje_reda++;
}
}
else cout << "Red je prazan!" << endl;
};
int salterska_rekurzija(red *Q) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
if(!IsEmptyQ(Q))
salterska_rekurzija(Q);
EnQueueQ(klijent,Q);
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje racuna: " << klijent.stanje_racuna << endl;
if(klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
cout << endl;
};
int main() {
int A;
red *Q=InitQ(Q);
red *Qpom=InitQ(Qpom);
do {
cout << "1. Dodaj zapis o klijentu\n2. Propusti umirovljenike" << endl;
cout << "3. Izbaci klijenate koji imaju manje od 100 kn na racunu i zele kredit" << endl;
cout << "4. Otvaranje novog saltera\n9. Izlaz iz programa" << endl;
cin >> A;
switch(A) {
case 1: dodaj_zapis(Q);
break;
case 2: prednost_umirovljenici(Q,Qpom);
break;
case 3: cout << "Izbacivanje klijenata koji imaju manje od 100 kn na racunu i zele kredit" << endl;
krediti100(Q);
break;
case 4: cout << "Zatvranje jednog i otvaranje drugog saltera" << endl;
salterska_rekurzija(Q);
break;
case 9: break;
}
} while (A!=9);
system ("pause");
return 0;
}
Revision: 36390
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 21, 2010 09:05 by kresimir20
Initial Code
#include <cstdlib>
#include "red_polje.h"
//#include "red_pokazivac.h"
using namespace std;
int broj=0;
void dodaj_zapis(red *Q) {
zapis klijent;
int A,B;
cout << "Koliko klijenata zelite unijeti? ";
cin >> A;
for(int i=0;i<A;i++) {
cin.ignore();
cin.clear();
cout << "Ime i prezime: ";
getline(cin,klijent.preime,'\n');
cout << "Godina rodjenja: ";
cin >> klijent.god;
cout << "Stanje na racunu: ";
cin >> klijent.stanje_racuna;
do {
cout << "VRSTA TRANSAKCIJE:\n1. uplate/isplate\n2. placanje racuna\n3. krediti" << endl;
cin >> B;
} while(B<1&&B>3);
if(B==1)
klijent.transakcija=1;
if(B==2)
klijent.transakcija=2;
if(B==3)
klijent.transakcija=3;
EnQueueQ(klijent,Q);
cout << "Klijent je dodan u red!" << endl;
broj++;
}
};
void prednost_umirovljenici(red *Q,red *stariji) {
if (!IsEmptyQ(Q)) {
int br_unosa=broj;
while (br_unosa!=0) {
zapis pom=FrontQ(Q);
DeQueueQ(Q);
if (pom.god>1945)
EnQueueQ(pom,stariji);
else
EnQueueQ(pom,Q);
br_unosa--;
}
while (!IsEmptyQ(stariji)) {
zapis umirovljenik=FrontQ(stariji);
DeQueueQ(stariji);
EnQueueQ(umirovljenik,Q);
}
cout << endl;
cout << "Ispis stanja reda:" << endl;
while (br_unosa!=broj) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
cout << endl;
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje na racunu: " << klijent.stanje_racuna << endl;
if (klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
EnQueueQ (klijent,Q);
br_unosa++;
}
}
else cout << "Red je prazan!" << endl;
};
void krediti100(red *Q) {
if (!IsEmptyQ(Q)) {
int stanje_reda=broj;
while (stanje_reda!=0) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
if (klijent.stanje_racuna<100&&klijent.transakcija==3)
broj--;
else EnQueueQ(klijent,Q);
stanje_reda--;
}
while (broj!=stanje_reda) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
cout << endl;
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje racuna: " << klijent.stanje_racuna << endl;
if(klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
EnQueueQ(klijent,Q);
stanje_reda++;
}
}
else cout << "Red je prazan!" << endl;
};
int salterska_rekurzija(red *Q) {
zapis klijent=FrontQ(Q);
DeQueueQ(Q);
if(!IsEmptyQ(Q))
salterska_rekurzija(Q);
EnQueueQ(klijent,Q);
cout << "Ime i prezime: " << klijent.preime << endl;
cout << "Godina rodjena: " << klijent.god << endl;
cout << "Stanje racuna: " << klijent.stanje_racuna << endl;
if(klijent.transakcija==1)
cout << "Transakcija: uplata/isplata" << endl;
else if (klijent.transakcija==2)
cout << "Transakcija: placanje racuna" << endl;
else
cout << "Transakcija: kredit" << endl;
cout << endl;
};
int main() {
int A;
red *Q=InitQ(Q);
red *Qpom=InitQ(Qpom);
do {
cout << "1. Dodaj zapis o klijentu\n2. Propusti umirovljenike" << endl;
cout << "3. Izbaci klijenate koji imaju manje od 100 kn na racunu i zele kredit" << endl;
cout << "4. Otvaranje novog saltera\n9. Izlazak iz programa" << endl;
cin >> A;
switch(A) {
case 1: dodaj_zapis(Q);
break;
case 2: prednost_umirovljenici(Q,Qpom);
break;
case 3: cout << "Izbacivanje klijenata koji imaju manje od 100 kn na racunu i zele kredit" << endl;
krediti100(Q);
break;
case 4: cout << "Zatvranje jednog i otvaranje drugog saltera" << endl;
salterska_rekurzija(Q);
break;
case 9: break;
}
} while (A!=9);
system ("pause");
return 0;
}
Initial URL
Initial Description
Initial Title
Glavni dio programa
Initial Tags
Initial Language
C++