Posted By

zvon123 on 11/22/10


Tagged

main


Versions (?)

Turina_Zvonimir_glavni program


 / Published in: C++
 

  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5. #include"red_polje.h"
  6.  
  7. queue* Q = InitQ(Q);
  8. int br = 0;
  9. tklijent klijent;
  10.  
  11. void unos_novog_u_red (){
  12. int br_unosa;
  13. cout << "Koliko klijenata zelite unijeti: ";
  14. cin >> br_unosa;
  15. br = br + br_unosa;
  16. cout << endl << endl;
  17. for (int i=0; i<br_unosa; i++) {
  18. cout << "Ime i prezime: ";
  19. cin.ignore();
  20. cin.getline(klijent.ime,30);
  21. cout << "Godina rodjenja: ";
  22. cin >> klijent.god;
  23. cout << "Stanje na racunu: ";
  24. cin >> klijent.stanje;
  25. do {
  26. cout << "Vrsta transakcije (u - uplata/isplata, p - placanje racuna, k - kredit): ";
  27. cin >> klijent.vrsta_trans;
  28. } while (klijent.vrsta_trans!='u' && klijent.vrsta_trans!='p' && klijent.vrsta_trans!='k');
  29. cout << endl;
  30. EnQueueQ(klijent, Q);
  31. }
  32. }
  33.  
  34. void ispis_iz_reda() {
  35. for (int i=0; i<br; i++) {
  36. klijent = FrontQ(Q);
  37. DeQueueQ(Q);
  38. cout << "Ime i prezime: " << klijent.ime << endl;
  39. cout << "Godina rodjenja: " << klijent.god << endl;
  40. cout << "Stanje na racunu: " << klijent.stanje << endl;
  41. cout << "Vrsta transakcije: ";
  42. if (klijent.vrsta_trans=='u') cout << "Uplata/isplata" << endl;
  43. if (klijent.vrsta_trans=='p') cout << "Placanje racuna" << endl;
  44. if (klijent.vrsta_trans=='k') cout << "Kredit" << endl;
  45. cout << endl;
  46. EnQueueQ(klijent, Q);
  47. }
  48. }
  49.  
  50. void zbrini_starije() {
  51. queue *pom_R = InitQ(pom_R);
  52. for (int i=0; i<br; i++) {
  53. klijent = FrontQ(Q);
  54. DeQueueQ(Q);
  55. if (klijent.god > 1945) EnQueueQ(klijent, pom_R);
  56. if (klijent.god <= 1945) EnQueueQ(klijent, Q);
  57. }
  58.  
  59. while (!IsEmptyQ(pom_R)) {
  60. klijent = FrontQ(pom_R);
  61. DeQueueQ(pom_R);
  62. EnQueueQ(klijent, Q);
  63. }
  64. }
  65.  
  66. void nema_uvjete_za_kredit () {
  67. int br_kredit = br;
  68. for (int i=0; i<br_kredit; i++) {
  69. tklijent pom = FrontQ(Q);
  70. DeQueueQ(Q);
  71. if(pom.stanje < 100 && pom.vrsta_trans=='k') {
  72. br--;
  73. }
  74. else EnQueueQ(pom, Q);
  75. }
  76. }
  77.  
  78. void salter () {
  79. tklijent pom = FrontQ(Q);
  80. DeQueueQ(Q);
  81. if (!IsEmptyQ(Q))
  82. salter();
  83. EnQueueQ(pom, Q);
  84. }
  85.  
  86. int main () {
  87. int izbor;
  88.  
  89. do {
  90. cout << "---- Izbornik ----" << endl
  91. << "1. Unos novih klijenata u red" << endl
  92. << "2. Zbrinjavanje starijih" << endl
  93. << "3. Izbaci one koji nemaju uvjete za kredit" << endl
  94. << "4. Otvaranje novog saltera" << endl
  95. << "9. Izlaz " << endl
  96. << "Vas izbor: ";
  97. cin >> izbor;
  98. cout << endl;
  99.  
  100.  
  101. switch (izbor) {
  102. case 0:
  103. ispis_iz_reda();
  104. break;
  105.  
  106. case 1:
  107. unos_novog_u_red();
  108. cout << endl;
  109. break;
  110.  
  111. case 2:
  112. zbrini_starije();
  113. ispis_iz_reda();
  114. cout << endl;
  115. break;
  116.  
  117. case 3:
  118. nema_uvjete_za_kredit();
  119. ispis_iz_reda();
  120. cout << endl;
  121. break;
  122.  
  123. case 4:
  124. salter();
  125. ispis_iz_reda();
  126. cout << endl;
  127. break;
  128.  
  129. default:
  130. cout << "Krivi izbor" << endl << endl;
  131. }
  132. } while (izbor!=9);
  133. return 0;
  134. }

Report this snippet  

You need to login to post a comment.