Posted By

nsamonik on 11/12/12


Tagged

lista polja zivotinje evdencija


Versions (?)

polja.h


 / Published in: C++
 

Datoteka polja.h sadrzi funkcije koje su pozivane u glavnom programu evidencije zivotinja.

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

Report this snippet  

You need to login to post a comment.