Posted By

rlabrovi on 11/12/12


Tagged

main int zivotinje


Versions (?)

IntMain


 / Published in: C++
 

Program za ažuriranje podataka o životinjama

  1. #include <iostream>
  2. #include <cstring>
  3. //#include "lista_pokazivac.h"
  4. //#include "lista_polja.h"
  5. using namespace std;
  6. pzivotinja *provjera=new pzivotinja;
  7. tzivotinja *zadnji2=new tzivotinja;
  8. int a=1;
  9. void sadrzaj(pzivotinja *sadrzaj){
  10. cout<<"Sifra= "<<sadrzaj->sifra<<endl;
  11. cout<<"Naziv= "<<sadrzaj->naziv<<endl;
  12. cout<<"Vrsta= "<<sadrzaj->vrsta<<endl;
  13. cout<<"Cijena= "<<sadrzaj->cijena<<endl;
  14. cout<<"Datum= "<<sadrzaj->dan<<" . " << sadrzaj->mjesec <<"." << sadrzaj->godina <<endl;
  15. cout<<"-----------------------------\n";
  16. }
  17.  
  18. int dodavanje(int a,tzivotinja *glava){
  19. bool uspjesno=false;
  20. pzivotinja *novi=new pzivotinja;
  21. zadnji2=glava;
  22. UnosL(a,novi);
  23. int brojac=NumberL(zadnji2);
  24. zadnji2=glava;
  25. cout<<brojac<<endl;
  26. while(brojac>=0){
  27. if(brojac==0){
  28. InsertL(novi,0,zadnji2);
  29. uspjesno=true;
  30. break;
  31. }
  32. provjera=RetrieveL(brojac,zadnji2);
  33. zadnji2=glava;
  34. if(novi->sifra>provjera->sifra){
  35. InsertL(novi,brojac,zadnji2);
  36. uspjesno=true;
  37. break;
  38. }
  39. else{
  40. brojac--;
  41. }
  42. }
  43. if(!uspjesno)return 0;
  44. else return 1;
  45. }
  46. void ispis(tzivotinja *glava){
  47. pzivotinja *trenutno;
  48. zadnji2=glava;
  49. int brojac= NumberL(zadnji2);
  50. for(int i=brojac;i>0;i--){
  51. zadnji2=glava;
  52. trenutno=RetrieveL(i,zadnji2);
  53. cout<<"Sifra= "<<trenutno->sifra<<endl;
  54. cout<<"Naziv= "<<trenutno->naziv<<endl;
  55. cout<<"Vrsta= "<<trenutno->vrsta<<endl;
  56. cout<<"Cijena= "<<trenutno->cijena<<endl;
  57. cout<<"Datum= "<<trenutno->dan<<" . " << trenutno->mjesec <<"." << trenutno->godina <<endl;
  58.  
  59. cout<<"-----------------------------\n";
  60. }
  61. }
  62.  
  63. void pretrazi_datum (tzivotinja *glava){
  64. pzivotinja *trenutno;
  65. int brojac2=0;
  66. int brojac=NumberL(zadnji2);
  67. for(int i=brojac;i>0;i--){
  68. trenutno=RetrieveL(i,zadnji2);
  69. if(trenutno->godina>2012){
  70. sadrzaj(trenutno);
  71. brojac2++;}
  72. else if(trenutno->godina==2012 && trenutno->mjesec>9){
  73. sadrzaj(trenutno);
  74. brojac2++;}
  75. else if(trenutno->godina==2012 && trenutno->mjesec==9 && trenutno->dan>23){
  76. sadrzaj(trenutno);
  77. brojac2++;}
  78.  
  79. ;
  80. }//for
  81.  
  82. cout<<"Ukupno zivotinja otpremljeno nakon 23.9.2012: "<< brojac2 <<endl;
  83. }
  84.  
  85. int brisanje(tzivotinja *glava){
  86.  
  87.  
  88.  
  89. bool izbrisan;
  90. pzivotinja *trenutno;
  91. int n;
  92. int brojac=NumberL(zadnji2);
  93. for(int i=brojac;i>0;i--){
  94. cout<<endl<<endl;
  95. cout<<"ELEMENT BROJ: "<<i<<endl<<endl;
  96. trenutno=RetrieveL(i,zadnji2);
  97. cout<<"Sifra= "<<trenutno->sifra<<endl;
  98. cout<<"Naziv= "<<trenutno->naziv<<endl;
  99. cout<<"Vrsta= "<<trenutno->vrsta<<endl;
  100. cout<<"Cijena= "<<trenutno->cijena<<endl;
  101. cout<<"Datum= "<<trenutno->dan<<" . " << trenutno->mjesec <<"." << trenutno->godina <<endl;
  102.  
  103. cout<<"-----------------------------\n";
  104. }
  105.  
  106. cout<<"Unesite pojedina����¯�¿�½���¯���¿���½ne unose prema nazivu ����¯�¿�½������¾ivotinje koju zelite pobrisati: \n";
  107. char l[10];
  108. cin >> l;
  109. int h;
  110. if(strcmp(trenutno->naziv,l)==0)
  111. h=trenutno->sifra;
  112.  
  113.  
  114. zadnji2=glava;
  115. if(brojac>0){
  116. if(DeleteL(h,zadnji2)==0)return 1;
  117. else return 0;
  118. }
  119. cout<<"Nema niti jednog elementa\n";
  120. return 0;
  121. }
  122.  
  123. int brisanje(int n,tzivotinja *glava){
  124. cout<<"Unesite vrstu zivotinje cije sve predstavnike zelite pobrisati:\n";
  125. char l[10];
  126. cin >> l ;
  127.  
  128. bool izbrisan;
  129. pzivotinja *trenutno;
  130. int brojac=NumberL(zadnji2);
  131. for(int i=brojac;i>0;i--){
  132. trenutno=RetrieveL(i,zadnji2);
  133. if(strcmp(trenutno->vrsta,l)==0){
  134. DeleteL(i,zadnji2);
  135. izbrisan=true;
  136. i=0;
  137. }
  138. }
  139. if(izbrisan)return 1;
  140. if(brojac==0)cout<<"Nema niti jednog elementa\n";
  141. return 0;
  142. }
  143.  
  144.  
  145.  
  146. int main(){
  147. tzivotinja *glava;
  148. glava=InitL(glava);
  149. int izbor;
  150. do{
  151. cout << "\n\n";
  152. cout << "IZBORNIK";
  153. cout << "***************************************************************" << endl;
  154. cout << "1. Dodavanje zapisa u listu prema rastucoj sifri zivotinje." << endl;
  155. cout << "2. Ispis sadrzaja liste pocevsi od posljednje." << endl;
  156. cout << "3. Pretraga liste i ispis svih zivotinja dostavljenih nakona 23.9.2012 i njihov broj." << endl;
  157. cout << "4. Brisanje pojedinacnog unosa." << endl;
  158. cout << "5. Brisanje svih zivotinja odabranih vrsta." << endl;
  159. cout << "9. Izlaz iz programa. " << endl;
  160. cout << "*************************************************************** " << endl;
  161. cin >> izbor;
  162. switch(izbor){
  163. case 1:{
  164.  
  165. zadnji2=glava;
  166. int test=dodavanje(a,zadnji2);
  167. a++;
  168. break;
  169. }
  170. case 2:{
  171. zadnji2=glava;
  172. ispis(zadnji2);
  173. break;
  174. }
  175. case 3:{
  176. zadnji2=glava;
  177. pretrazi_datum(zadnji2);
  178. break;
  179. }
  180. case 4:{
  181.  
  182. zadnji2=glava;
  183. brisanje(zadnji2);
  184. break;
  185. }
  186. case 5:{
  187. int n=0;
  188. zadnji2=glava;
  189. brisanje(n,zadnji2);
  190. }
  191. }
  192. while(izbor!=9);
  193. return 0;
  194. }

Report this snippet  

You need to login to post a comment.