Posted By

maserdare on 11/22/10


Tagged


Versions (?)

main funkcija


 / Published in: C++
 

  1. #include<iostream>
  2. #include<cstring>
  3. //#include "red_polje.h"
  4. #include "red_pokazivaci.h"
  5.  
  6. using namespace std;
  7. int brojac=0;
  8.  
  9. void dodaj(){
  10. int vrsta_transakcije;
  11. klijent element;
  12. cout << endl << "Ime i prezime: ";
  13. cin.ignore();
  14. cin.getline(element.prez_ime, 50);
  15. cout << "Godiste: ";
  16. cin >> element.god;
  17. do{
  18. cout << "Vrsta transakcije: ";
  19. cout << endl << "1. uplate/isplate";
  20. cout << endl << "2. Placanje racuna";
  21. cout << endl << "3. Krediti" << endl;
  22. cout << endl << "9. Izlaz iz programa"<<endl;
  23. cout << "Vas izbor: "; cin >> vrsta_transakcije;
  24. }while(vrsta_transakcije<1 || vrsta_transakcije >3);
  25. switch(vrsta_transakcije){
  26. case 1:
  27. strcpy(element.transakcija, "Uplate/isplate");
  28. break;
  29. case 2:
  30. strcpy(element.transakcija, "Placanje racuna");
  31. break;
  32. case 3:
  33. strcpy(element.transakcija, "Krediti");
  34. break;
  35. }
  36. cout <<"Stanje na racunu: ";
  37. cin >> element.stanje;
  38. EnQueueQ(element, Q);
  39. brojac++;
  40. }
  41.  
  42. void stanje(){
  43. klijent element;
  44. for(int i=0; i<brojac; i++){
  45. element = FrontQ(Q);
  46. DeQueueQ(Q);
  47. EnQueueQ(element, Q);
  48. cout << endl << "Ime i prezime: " << element.prez_ime;
  49. cout << endl << "Godiste: " <<element.god;
  50. cout << endl << "Vrsta transakcije: " <<element.transakcija;
  51. cout << endl << "Stanje na racunu: " << element.stanje<< endl;
  52. cout << endl;
  53. }
  54. }
  55.  
  56. void starijiod(){
  57. InitQ(Pom);
  58. klijent element;
  59. for(int i=0;i<brojac; i++){
  60. element = FrontQ(Q);
  61. DeQueueQ(Q);
  62. if(element.god < 1945) EnQueueQ(element, Q);
  63. else EnQueueQ(element, Pom);
  64. }
  65. while(!IsEmptyQ(Pom)){
  66. element = FrontQ(Pom);
  67. DeQueueQ(Pom);
  68. EnQueueQ(element, Q);
  69. }
  70. cout << endl << "Stanje u redu: " << endl;
  71. stanje();
  72. }
  73.  
  74. void izbacivanje(){
  75. klijent element;
  76. int brojac2 = brojac;
  77. for(int i=0;i<brojac2; i++){
  78. element = FrontQ(Q);
  79. DeQueueQ(Q);
  80. --brojac;
  81. if(!(element.stanje < 100 && !strcmp(element.transakcija, "Krediti"))){
  82. ++brojac;
  83. EnQueueQ(element, Q);
  84. }
  85. }
  86. cout << endl << "Stanje u redu: " << endl;
  87. stanje();
  88. }
  89.  
  90. void otvaranje_novog_saltera(){
  91. klijent element = FrontQ(Q);
  92. DeQueueQ(Q);
  93. if(!IsEmptyQ(Q)) otvaranje_novog_saltera();
  94. EnQueueQ(element, Q);
  95. }
  96.  
  97. int main(){
  98. int izbor;
  99. InitQ(Q);
  100.  
  101. do{
  102. cout << endl << "1. Dodavanje zapisa o klijentima u red ";
  103. cout << endl << "2. Pustanje starijih od 65 godina na pocetak reda ";
  104. cout << endl << "3. Izbacivanje klijenata s manje od 100 kn na racunu ";
  105. cout << endl << "4. Zatvaranje saltera, i otvaranje novog saltera (obracanje reda)";
  106. cout << endl << "Vas izbor: ";
  107. cin >> izbor;
  108. switch(izbor){
  109. case 1:
  110. dodaj();
  111. break;
  112. case 2:
  113. if(brojac == 0) cout << endl << "Red je prazan! " << endl;
  114. else starijiod();
  115. break;
  116. case 3:
  117. if(brojac == 0) cout << endl << "Red je prazan! " << endl;
  118. else izbacivanje();
  119. break;
  120.  
  121. case 4:
  122. if(brojac == 0) cout << endl << "Red je prazan! " << endl;
  123. else{
  124. otvaranje_novog_saltera();
  125. cout << endl << "Stanje u redu: " << endl;
  126. stanje();
  127. }
  128. break;
  129. case 9:
  130. cout << "Izlazim iz programa"<<endl;
  131. break;
  132. }
  133. }while(izbor != 9);
  134. system("pause");
  135. return 0;
  136. }

Report this snippet  

You need to login to post a comment.