Posted By

zokisp on 11/12/12


Tagged

lista polje


Versions (?)

lista polje


 / Published in: C++
 

biblioteka lista polje potrebna za zadatak 1 iz SP

  1. #include <iostream>
  2. using namespace std;
  3.  
  4. struct pzivotinja
  5. {
  6. int sifra,dan,mjesec,godina;
  7. char naziv[40];
  8. char vrsta[40];
  9. float cijena;
  10. };
  11.  
  12. struct tzoo
  13. {
  14. pzivotinja*element[1000];
  15. int kursor;
  16. };
  17.  
  18. int FirstL(tzoo*oprema)
  19. {
  20. return 0;
  21. }
  22.  
  23. int EndL(tzoo*oprema)
  24. {
  25. return oprema->kursor;
  26. }
  27.  
  28. int NextL(int k,tzoo*oprema)
  29. {
  30. return k+1;
  31. }
  32.  
  33. int PreviousL(int k,tzoo*oprema)
  34. {
  35. return k-1;
  36. }
  37.  
  38. int LocateL(int n,tzoo*oprema)
  39. {
  40. for(int i=0; i<oprema->kursor; i++)
  41. {
  42. if(n==oprema->element[i]->sifra)return i;
  43. }
  44. return oprema->kursor;
  45. }
  46. void InsertL(pzivotinja*novi, int k, tzoo*oprema)
  47. {
  48. if(k>EndL(oprema))
  49. cout<<"Prevelika pozicija!\n";
  50.  
  51. else
  52. {
  53. for (int i = EndL(oprema); i > k; i--)
  54. {
  55. oprema->element[i] = oprema->element[i-1];
  56. }
  57. oprema->element[k] = novi;
  58. oprema->kursor = oprema->kursor + 1;
  59. }
  60. }
  61. int DeleteL(int k, tzoo*oprema)
  62. {
  63. k-=1;
  64. if(k>EndL(oprema))
  65. cout<<"Taj element ne postoji!\n";
  66. else
  67. {
  68. for(int i=k; i<EndL(oprema); i++)
  69. {
  70. oprema->element[i]=oprema->element[i+1];
  71. }
  72. oprema->kursor=oprema->kursor-1;
  73. return 0;
  74. }
  75. }
  76. void DeleteAll(tzoo*oprema)
  77. {
  78. oprema->kursor=0;
  79. }
  80. int NumberL(tzoo*oprema)
  81. {
  82. int k=oprema->kursor;
  83. return k;
  84. }
  85. pzivotinja*RetrieveL(int k,tzoo*oprema)
  86. {
  87. return oprema->element[k-1];
  88. }
  89. tzoo*InitL(tzoo*oprema)
  90. {
  91. tzoo*novi=new tzoo;
  92. novi->kursor=0;
  93. return novi;
  94. }
  95. pzivotinja*UnosL(pzivotinja*novi)
  96. {
  97. cout<<"Sifra= ";
  98. cin>>novi->sifra;
  99. cout<<"Vrsta= ";
  100. cin>>novi->vrsta;
  101. cout<<"Naziv= ";
  102. cin>>novi->naziv;
  103. cout<<"Cijena= ";
  104. cin>>novi->cijena;
  105. do{
  106. cout<<"Dan dostave= ";
  107. cin>>novi->dan;
  108. }
  109. while(novi->dan<1||novi->dan>32);
  110. do{
  111. cout<<"Mjesec dostave= ";
  112. cin>>novi->mjesec;
  113. }
  114. while(novi->mjesec<1||novi->mjesec>12);
  115. cout<<"Godina dostave= ";
  116. cin>>novi->godina;
  117. }
  118.  
  119. pzivotinja*IspisL(pzivotinja*novi){
  120. cout<<"=====================\n";
  121. cout<<"Zivotinja\n";
  122. cout<<"---------------------\n";
  123. cout<<"Sifra= "<<novi->sifra<<endl;
  124. cout<<"Vrsta= "<<novi->vrsta<<endl;
  125. cout<<"Naziv= "<<novi->naziv<<endl;
  126. cout<<"Datum= "<<novi->dan<<"."<<novi->mjesec<<"."<<novi->godina<<endl;
  127. cout<<"Cijena= "<<novi->cijena<<endl;
  128. }

Report this snippet  

You need to login to post a comment.