Posted By

tmaltar on 11/12/10


Tagged

program glavni


Versions (?)

main


 / Published in: C++
 

  1. #include<iostream>
  2.  
  3. #include"stack_polje.h"
  4. //#include"stack_pokazivac.h"
  5.  
  6. using namespace std;
  7.  
  8. void ispis(glava S) {
  9. tautomobil auti[50];
  10. int br=0;
  11. while(!IsEmptyS(S)){
  12. automobil = TopS(S);
  13. auti[br] = automobil;
  14. br++;
  15. PopS(S);
  16. }
  17. cout << "U kamionu se nalaze: " << endl << endl;
  18. cout << "------------------------------------------" << endl;
  19. for (int i=br-1;i>=0;i--) {
  20. cout << "------------------------------------------" << endl;
  21. cout << "Serijski broj automobila: " << auti[i].serijski << endl;
  22. cout << "Proizvodac automobila: " << auti[i].proizvodac << endl;
  23. cout << "Model automobila: " << auti[i].model << endl;
  24. cout << "Godina proizvodnje: " << auti[i].godina << endl;
  25. cout << "------------------------------------------" << endl;
  26. cout << endl;
  27. automobil = auti[i];
  28. PushS(automobil, S);
  29. }
  30. }
  31.  
  32. void unos (glava S){
  33. cout << "Serijski broj automobila: ";
  34. cin >> automobil.serijski;
  35. cout << "Proizvodac automobila: ";
  36. cin.ignore();
  37. cin.getline(automobil.proizvodac, 50);
  38. cout << "Model automobila: ";
  39. cin.getline(automobil.model, 50);
  40. do {
  41. cout << "Godina proizvodnje: ";
  42. cin >> automobil.godina;
  43. if (automobil.godina < 1995 ||automobil.godina>2010)
  44. cout << "Godina mora biti izmedu 1995 i 2010" << endl;
  45. } while (automobil.godina < 1995 ||automobil.godina>2010);
  46. cout << endl;
  47. PushS(automobil, S);
  48. }
  49.  
  50. void iskrcaj_po_godini(glava S) {
  51. glava pomocni = InitS(pomocni);
  52. tautomobil aut;
  53. cout << "Iskrcani automobili:" << endl;
  54. cout << "------------------------------------------" << endl;
  55. while(!IsEmptyS(S)){
  56. aut = TopS(S);
  57. PopS(S);
  58. PushS(aut, pomocni);
  59. if(aut.godina>=2006)
  60. if(stricmp(aut.proizvodac,"Audi")) {
  61. cout << "------------------------------------------" << endl;
  62. cout << "Serijski broj automobila: " << aut.serijski << endl;
  63. cout << "Proizvodac automobila: " << aut.proizvodac << endl;
  64. cout << "Model automobila: " << aut.model << endl;
  65. cout << "Godina proizvodnje: " << aut.godina << endl;
  66. cout << "------------------------------------------" << endl;
  67. cout << endl;
  68. }
  69. }
  70.  
  71. while(!IsEmptyS(pomocni)) {
  72. aut = TopS(pomocni);
  73. PopS(pomocni);
  74. if(aut.godina<2006 || !(stricmp(aut.proizvodac,"Audi")))
  75. PushS(aut,S);
  76. }
  77. }
  78.  
  79. void iskrcaj_audi(glava S) {
  80. tautomobil iskrcani = TopS(S);
  81. if(!stricmp(iskrcani.proizvodac,"Audi")){
  82. cout << "------------------------------------------" << endl;
  83. cout << "Serijski broj automobila: " << iskrcani.serijski << endl;
  84. cout << "Proizvodac automobila: " << iskrcani.proizvodac << endl;
  85. cout << "Model automobila: " << iskrcani.model << endl;
  86. cout << "Godina proizvodnje: " << iskrcani.godina << endl;
  87. cout << "------------------------------------------" << endl;
  88. cout << endl;
  89. }
  90. PopS(S);
  91. if(!IsEmptyS(S))
  92. iskrcaj_audi(S);
  93. if(stricmp(iskrcani.proizvodac,"Audi"))
  94. PushS(iskrcani, S);
  95. }
  96.  
  97. int main () {
  98. int izbor;
  99. glava S = InitS(S);
  100. do {
  101. cout << "---- Izbornik ----" << endl;
  102. cout << "1. Unos automobila u stack" << endl;
  103. cout << "2. Ispis automobila iz stack-a" << endl;
  104. cout << "3. Iskrcaj automobila s godinom proizvodnje 2006-2010 (osim Audija)" << endl;
  105. cout << "4. Iskrcaj Audija" << endl;
  106. cout << "9. Izlaz iz programa" << endl;
  107. cout << "Vas izbor: ";
  108. cin >> izbor;
  109. cout << endl;
  110. switch (izbor) {
  111. case 1:
  112. unos(S);
  113. cout << endl;
  114. break;
  115. case 2:
  116. ispis(S);
  117. cout << endl;
  118. break;
  119. case 3:
  120. if(!IsEmptyS(S)) {
  121. iskrcaj_po_godini(S);
  122. cout << endl;
  123. ispis(S);
  124. }
  125. break;
  126. case 4:
  127. if(!IsEmptyS(S)) {
  128. cout << "Iskrcani automobili:" << endl;
  129. cout << "------------------------------------------" << endl;
  130. iskrcaj_audi(S);
  131. ispis(S);
  132. cout << endl;
  133. }
  134. break;
  135. case 9:
  136. break;
  137. default:
  138. cout << endl << endl;
  139. }
  140. } while (izbor!=9);
  141. return 0;
  142. }

Report this snippet  

You need to login to post a comment.