Posted By

Ahilis001 on 11/12/12


Tagged

polje implementacija zivotinje


Versions (?)

implementacija preko polja


 / Published in: C++
 

implementacija trgovine kucnim ljubimcima preko polja... sadrzi funkcije poput FirstL(L), EndL(L),NextL(p,L),PreviousL(p,L), LocateL(x,L), InsertL(x,p,L), DeleteL(p,L), RetreiveL(p,L), DeleteAllL(L) i InitL(L) nazivima prilagodenim za zadatak...

  1. #include <iostream>
  2. using namespace std;
  3. #define IMPLEMENTACIJA_PREKO_POLJA_H
  4.  
  5.  
  6.  
  7. struct zivotinje {
  8. int sifra;
  9. char vrsta[30],naziv[30];
  10. float cijena;
  11. int datum;
  12. };
  13.  
  14. struct lista{
  15. zivotinje zivotinja[1000];
  16. int kursor;
  17. };
  18.  
  19. typedef struct lista l;
  20. typedef int element;
  21.  
  22.  
  23. int kraj_liste(lista *l){
  24. return ((*l).kursor);
  25. }
  26.  
  27. int pocetak_liste(lista *l){
  28. if ((*l).kursor==0)
  29. return kraj_liste(l);
  30. else
  31. return (0);
  32. }
  33.  
  34.  
  35. element sljedeca_zivotinja(element p , lista *l){
  36. if (p==(*l).kursor) cout<<"Funkcija nije definirana..."<<endl;
  37. else return (p+1);
  38. }
  39.  
  40. element prethodna_zivotinja(element p , lista *l){
  41. if(p==0) cout<<"Funkcija nije definirana..."<<endl;
  42. else return (p-1);
  43. }
  44.  
  45. element lociranje_zivotinje_naziv(zivotinje x, lista *l){
  46. if((*l).kursor==0){
  47. cout<<"Lista je prazna..."<<endl;
  48. exit(0);
  49. }
  50. else{
  51. int i;
  52. i=0;
  53. while(i!=(*l).kursor){
  54. if(strcmp(x.naziv, (*l).zivotinja[i].naziv)==0)
  55. return i;
  56. i++;
  57. }//while
  58. }//else
  59. }
  60.  
  61. element lociranje_zivotinje_vrsta(zivotinje x, lista *l){
  62. if((*l).kursor==0){
  63. cout<<"Lista je prazna..."<<endl;
  64. exit(0);
  65. }//if
  66. else{
  67. int i;
  68. i=0;
  69. while(i!=(*l).kursor){
  70. if(strcmp(x.vrsta, (*l).zivotinja[i].vrsta)==0)
  71. return i;
  72. i++;
  73. }//while
  74. }//else
  75. }//locate
  76.  
  77.  
  78. element upis_zivotinje(zivotinje x, int p , lista *l){
  79. for(int i=kraj_liste(l); i>p; i--)
  80. (*l).zivotinja[i]=(*l).zivotinja[i-1];
  81. (*l).zivotinja[p]=x;
  82. (*l).kursor=(*l).kursor+1;
  83. if((*l).zivotinja[p].sifra==x.sifra)
  84. return 1;
  85. else
  86. return 0;
  87. }
  88.  
  89. element brisanje_zivotinje(element p, lista*l){
  90. if((p<(*l).kursor)&&(p>=0)){
  91. for(int i=p; i<(*l).kursor; i++)
  92. (*l).zivotinja[i]=(*l).zivotinja[i+1];
  93. (*l).kursor--;
  94. }
  95. else{
  96. cout << "Element: " << p << " ne postoji u listi..." << endl;
  97. return 0;
  98. }
  99. }
  100.  
  101. zivotinje vrijednost_zivotinje_u_listi(element p, lista *l){
  102. return (*l).zivotinja[p];
  103. }
  104.  
  105. element brisanje_liste(lista *l){
  106. (*l).kursor=0;
  107. }
  108.  
  109. lista *inicijalizacija_liste(lista *l){
  110. l=new lista;
  111. (*l).kursor=0;
  112. return l;
  113. }

Report this snippet  

You need to login to post a comment.