Posted By

mgroznic on 11/12/12


Tagged

sp Matej Groznica


Versions (?)

lista_polje.h


 / Published in: C++
 

Datoteka zaglavlja, strukture podataka

  1. #include <string>
  2. using namespace std;
  3.  
  4.  
  5. struct ziv {
  6. int sifra;
  7. string naziv;
  8. string vrsta;
  9. int datum[3];
  10. int cijena;
  11. };
  12.  
  13. struct lista2 {
  14. ziv polje[10000];
  15. int kursor;
  16. };
  17. p
  18. typedef lista2 lista;
  19. typedef int element;
  20.  
  21. void InitL(lista *lista2) {
  22. lista2->kursor=0;
  23. }
  24.  
  25. element FirstL(lista *lista2) {
  26. return 0;
  27. }
  28. element EndL(lista *lista2) {
  29. return lista2->kursor;
  30. }
  31.  
  32. element NextL(element e, lista *lista2) {
  33. return e+1;
  34. }
  35.  
  36. element PreviousL(element e, lista *lista2) {
  37. return e-1;
  38. }
  39.  
  40.  
  41. int InsertL(ziv nova_ziv, element e, lista *lista2) {
  42. if(lista2->kursor==10000) {
  43. return 0;
  44. }
  45. for (int i=lista2->kursor;i>e;i--) {
  46. lista2->polje[i]=lista2->polje[i-1];
  47. }
  48. lista2->polje[e]=nova_ziv;
  49. lista2->kursor++;
  50. return 1;
  51. }
  52.  
  53.  
  54. bool DeleteL(element e, lista *lista2) {
  55. for (int i=e; i<lista2->kursor; i++)
  56. lista2->polje[i]=lista2->polje[i+1];
  57. lista2->kursor--;
  58. }
  59.  
  60.  
  61. void DeleteAll(lista *lista2) {
  62. lista2->kursor=0;
  63. }
  64.  
  65. element LocateL(ziv odbjegla, lista *lista2) {
  66. for (int i = 0; i < lista2->kursor; i++) {
  67. if (lista2->polje[i].sifra == odbjegla.sifra) {
  68. return i;
  69. }
  70. }
  71.  
  72. }
  73.  
  74. ziv RetrieveL(element e, lista *lista2) {
  75. return lista2->polje[e];
  76. }

Report this snippet  

You need to login to post a comment.