Posted By

ledalink on 11/22/10


Tagged

sp zadatak3


Versions (?)

Main banka


 / Published in: C++
 

  1. #include<iostream>
  2.  
  3. struct tpodaci {
  4. char prez [35];
  5. char ime [35];
  6. int god_rod;
  7. int stanje_rac;
  8. char vrsta_tran [35];
  9. };
  10.  
  11. #include "red_polje.h"
  12. //#include "red_pokazivac.h"
  13.  
  14. using namespace std;
  15.  
  16. void unos (red *novi) {
  17. tpodaci podaci;
  18. int br;
  19. cout<<"Koliko klijenata zelite unijeti?\n";
  20. cin>>br;
  21. for (int i=1;i<(br+1);i++) {
  22. cout<<"Prezime klijenta: ";
  23. cin>>podaci.prez;
  24. cout<<"Ime klijenta: ";
  25. cin>>podaci.ime;
  26. cout<<"Godina rodenja klijenta: ";
  27. cin>>podaci.god_rod;
  28. cout<<"Stanje racuna klijenta: ";
  29. cin>>podaci.stanje_rac;
  30. cout<<"Vrsta transakcije klijenta: ";
  31. cin>>podaci.vrsta_tran;
  32. EnQueueQ (podaci, novi);
  33. }
  34. }
  35.  
  36. void stariji (red *novi, red *pomocni) {
  37. tpodaci podaci;
  38. if (IsEmptyQ(novi)) {
  39. cout<<"Red je prazan.\n";
  40. }
  41. else {
  42. while (!IsEmptyQ(novi)) {
  43. podaci=FrontQ(novi);
  44. DeQueueQ(novi);
  45.  
  46. if(podaci.god_rod<1945) {
  47. cout<<"KLIJENT STARIJI OD 65 GODINA"<<endl;
  48. cout << "Prezime klijenta: " << podaci.prez << endl;
  49. cout << "Ime klijenta: "<< podaci.ime << endl;
  50. cout << "Godina rodenja klijenta: " << podaci.god_rod << endl;
  51. cout << "Stanje racuna klijenta: " << podaci.stanje_rac << endl;
  52. cout << "Vrsta transakcije klijenta: " << podaci.vrsta_tran << endl;
  53. }
  54. else EnQueueQ (podaci, pomocni);
  55. }
  56. }
  57. while (!IsEmptyQ(pomocni)) {
  58. podaci=FrontQ(pomocni);
  59. DeQueueQ(pomocni);
  60.  
  61. cout<<"KLIJENTI MLADI OD 65 GODINA"<<endl;
  62. cout << "Prezime klijenta: " << podaci.prez << endl;
  63. cout << "Ime klijenta: " << podaci.ime << endl;
  64. cout << "Godina rodenja klijenta: " << podaci.god_rod << endl;
  65. cout << "Stanje racuna klijenta: " << podaci.stanje_rac << endl;
  66. cout << "Vrsta transakcije klijenta: " << podaci.vrsta_tran << endl;
  67. EnQueueQ(podaci, novi);
  68.  
  69. }
  70. }
  71.  
  72. void manje (red *novi, red *pomocni) {
  73. tpodaci podaci;
  74. if (IsEmptyQ(novi)) {
  75. cout<<"Red je prazan.\n";
  76. }
  77. else {
  78. while (!IsEmptyQ(novi)) {
  79. podaci=FrontQ(novi);
  80. DeQueueQ(novi);
  81.  
  82. if(podaci.stanje_rac<100 && strcmp(podaci.vrsta_tran,"kreditiranje")) {
  83. cout<<"KLIJENT IZBACEN"<<endl;
  84. cout << "Prezime klijenta: " << podaci.prez << endl;
  85. cout << "Ime klijenta: " << podaci.ime << endl;
  86. cout << "Godina rodenja klijenta: " << podaci.god_rod << endl;
  87. cout << "Stanje racuna klijenta: " << podaci.stanje_rac << endl;
  88. cout << "Vrsta transakcije klijenta: " << podaci.vrsta_tran << endl;
  89. }
  90. else EnQueueQ (podaci, pomocni);
  91. }
  92. }
  93. while (!IsEmptyQ(pomocni)) {
  94. podaci=FrontQ(pomocni);
  95. DeQueueQ(pomocni);
  96.  
  97. cout<<"OSTALI KLIJENTI"<<endl;
  98. cout << "Prezime klijenta: " << podaci.prez << endl;
  99. cout << "Ime klijenta: " << podaci.ime << endl;
  100. cout << "Godina rodenja klijenta: " << podaci.god_rod << endl;
  101. cout << "Stanje racuna klijenta: " << podaci.stanje_rac << endl;
  102. cout << "Vrsta transakcije klijenta: " << podaci.vrsta_tran << endl;
  103. EnQueueQ(podaci, novi);
  104. }
  105. }
  106.  
  107.  
  108.  
  109. int main () {
  110.  
  111. red *novi_red=new red, *pomocni_red=new red;
  112. InitQ (novi_red);
  113. InitQ (pomocni_red);
  114.  
  115. int izbor;
  116.  
  117. do {
  118. cout<<"\nIZBORNIK\n"<<endl;
  119. cout<<"1. Dodavanje zapisa o klijentu u red." <<endl;
  120. cout<<"2. Ispis klijenata starijih od 65 godina te potom ostalih."<<endl;
  121. cout<<"3. Ispis svih klijenata osim onih cije je stanje racuna manje od 100 kn." <<endl;
  122. cout<<"4. Obrnuti redoslijed klijenata u redu."<<endl;
  123. cout<<"9. Kraj programa."<<endl;
  124. cout<<"Vas izbor:";
  125. cin>>izbor;
  126.  
  127. switch (izbor) {
  128. case 1: unos(novi_red); break;
  129. case 2: stariji (novi_red, pomocni_red); break;
  130. case 3: manje (novi_red, pomocni_red); break;
  131. case 9: cout<<"Izlaz iz programa.\n"; break;
  132. default: cout<<"Krivi unos.\n";
  133. }
  134. }while (izbor!=9);
  135. return 0;
  136. }

Report this snippet  

You need to login to post a comment.