Posted By

ihontic on 11/12/12


Tagged

podataka stukture


Versions (?)

lista_polje.h


 / Published in: C++
 

Zaglavlje za polja

  1. struct tdatum {
  2. short dan, mj, god;
  3. };
  4.  
  5. struct tEl{
  6. int sifra;
  7. char vrsta[50],naziv[50];
  8. tdatum dat;
  9. float cijena;
  10. };
  11.  
  12. struct tLista{
  13. tEl ziv[10000];
  14. int K;
  15. };
  16.  
  17. tLista lista;
  18. int sifra=1,br_elem=0,h=0;
  19.  
  20. void InitL(tLista& lista) {
  21. lista.K=0;
  22. }
  23.  
  24. void InsertL(tEl x,int p,tLista& lista) {
  25. lista.ziv[p]=x;
  26. lista.K++;
  27. }
  28.  
  29. tEl RetrieveL(int p,tLista& lista) {
  30. return lista.ziv[p];
  31. }
  32.  
  33. int EndL(tLista& lista) {
  34. return lista.K;
  35. }
  36.  
  37. int LocateL(char x[], tLista& lista) {
  38. int p = EndL(lista);
  39. bool lociran=0;
  40. for(int i=0;i<p;i++)
  41. if(!strcmp(lista.ziv[i].naziv,x)||!strcmp(lista.ziv[i].vrsta,x)) {
  42. lociran=1;
  43. return i;
  44. }
  45. if(!lociran) return p;
  46. }
  47.  
  48. void DeleteL(int p,tLista& lista) {
  49. if(p==EndL(lista)-1) lista.K--;
  50. else {
  51. for(int i=p;i<EndL(lista)-1;i++)
  52. lista.ziv[i]=lista.ziv[i+1];
  53. lista.K--;
  54. }
  55. }
  56.  
  57. int FirstL(tLista& lista) {
  58. if(EndL(lista)==0) return EndL(lista);
  59. return 0;
  60. }
  61.  
  62. int PreviousL(int p,tLista& lista) {
  63. if(p==FirstL(lista)) return -1;
  64. return p-1;
  65. }
  66.  
  67. int NextL(int p,tLista& lista) {
  68. if(p==EndL(lista)) return -1;
  69. if(p==EndL(lista)-1) return EndL(lista);
  70. return p+1;
  71. }
  72.  
  73. void DeleteAllL(tLista& lista) {
  74. lista.K=0;
  75. }
  76.  
  77. void Vrati(tEl x,int p,tLista& lista) {
  78. lista.ziv[p]=x;
  79. }

Report this snippet  

You need to login to post a comment.