/ Published in: C++
u ovoj bibljioteci se nalazi funkcije liste pomoću polja koje se kotsire u glavnom programu.
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
#include <iostream> struct zivotinje{ int sifra; char vrsta[30]; char naziv[30]; int d,m,g,dat; float cijena; }; struct lista{ zivotinje a[1000]; int pokazivac; }; typedef int element; element EndL(lista *lis){ return lis->pokazivac; } element FirstL(lista *lis){ if (lis->pokazivac == 0) EndL(lis); return 0; } lista* InitL(lista *lis){ lis=new lista; lis->pokazivac=0; return lis; } element InsertL(zivotinje zivotinja, element p, lista *lis){ int j; for(j=EndL(lis);j>p;j--) lis->a[j]=lis->a[j-1]; lis->a[p]=zivotinja; lis->pokazivac=lis->pokazivac+1; if(lis->a[p].sifra==zivotinja.sifra) return 1; else return 0; } element PreviousL(element p, lista *lis){ if(p==FirstL(lis)) return -1; return p-1; } zivotinje RetrieveL(int p, lista *lis){ return lis-> a[p]; } element DeleteAllL(lista *lis){ lis->pokazivac=0; return 1; } element NextL(element p, lista *lis){ if(p==PreviousL(EndL(lis),lis)) return EndL(lis); return p+1; } element DeleteL(element p, lista *lis){ int j; int pom=lis->pokazivac; for(j=p;j<EndL(lis);j++) lis->a[j]=lis->a[j+1]; if(p!=EndL(lis)) lis->pokazivac=lis->pokazivac-1; if(pom!=lis->pokazivac) return 1; else return 0; } element LocateL(zivotinje z, lista* lis) { int j; for(j=0;j<EndL(lis);j++){ if(z.sifra!=0){ if(z.sifra==lis->a[j].sifra) return j; } } return EndL(lis); }