/ Published in: C++
Zaglavlje sa implementacijom liate pomoću polja. Sadrži funkcije za rad s listom.
Expand |
Embed | Plain Text
// IMPLEMENTACIJA LISTE POMOCU POLJA // using namespace std; struct Pljubimci{ int sifra; char vrsta[40]; char naziv[40]; int cijena; struct { int dan; int mjesec; int godina; }datum; }; struct Plista{ Pljubimci ljubimci[1000]; int cursor; }; typedef int element; element FirstL(Plista *B){ return 0; } element EndL(Plista *B){ return B->cursor; } element PreviousL(element p, Plista *B){ if(p==FirstL(B)) return -1; return p-1; } element NextL(element p, Plista* B) { if(p==PreviousL(EndL(B),B)) return EndL(B); return p+1; } element LocateL(Pljubimci a, Plista *B){ int j; for(j=0;j<EndL(B);j++){ if(a.sifra!=0){ if(a.sifra == B->ljubimci[j].sifra) return j; } } return EndL(B); } element InsertL(Pljubimci a, element p, Plista *B){ int j; for(j=EndL(B);j>p;j--) B->ljubimci[j]=B->ljubimci[j-1]; B->ljubimci[p]=a; B->cursor=B->cursor+1; if(B->ljubimci[p].sifra==a.sifra) return 1; else return 0; } element DeleteL(element p, Plista *B){ int j; int pom=B->cursor; for(j=p;j<EndL(B);j++) B->ljubimci[j]=B->ljubimci[j+1]; if(p!=EndL(B)) B->cursor=B->cursor-1; if(pom!=B->cursor) return 1; else return 0; } Pljubimci RetrieveL(element p, Plista *B){ return B->ljubimci[p]; } element DeleteAllL(Plista *B){ B->cursor=0; return 1; } Plista* InitL(Plista *B){ B = new Plista; B->cursor=0; return B; }
You need to login to post a comment.
