/ Published in: C++
datoteka zaglavlja u kojoj se nalazi implementacija liste pomoću polja
Expand |
Embed | Plain Text
struct tdate { int dan,godina,mjesec; }; struct elem { int sifra; char vrsta[20],naziv[20]; float cijena; tdate date; }; struct list { elem anim[10000]; int cursor; }; list lista; int sifra=1,br_el=0,v=0,n=0; int EndL(list& lista) { return lista.cursor; } int FirstL(list& lista) { if(EndL(lista)==0) return EndL(lista); return 0; } int PreviousL(int y,list& lista) { if(y==FirstL(lista)) return -1; return y-1; } int NextL(int y,list& lista) { if(y==EndL(lista)) return -1; if(y==EndL(lista)-1) return EndL(lista); return y+1; } int LocateL(char x[],list& lista) { int y = EndL(lista); bool nadjen=0; for(int i=0;i<y;i++) if(n==1&&!strcmp(lista.anim[i].naziv,x)||v==1&&!strcmp(lista.anim[i].vrsta,x)) { nadjen=1; return i; } if(!nadjen) return y; } void InsertL(elem x,int y,list& lista) { lista.anim[y]=x; lista.cursor++; } void DeleteL(int y,list& lista) { if(y==EndL(lista)-1) lista.cursor--; else { for(int i=y;i<EndL(lista)-1;i++) lista.anim[i]=lista.anim[i+1]; lista.cursor--; } } elem RetrieveL(int y,list& lista) { return lista.anim[y]; } void DeleteAll(list& lista) { lista.cursor=0; } void InitL(list& lista) { lista.cursor=0; } void Vrati(elem x,int y,list& lista) { lista.anim[y]=x; }
You need to login to post a comment.
