/ Published in: C++

Druga implementacija programa je preko implementacija preko polja.
Expand |
Embed | Plain Text
#include <string> using namespace std; struct zivotinja { int sifra; string vrsta; string naziv; int cijena; string datum; }; struct List { zivotinja p[10000]; int kursor; }; typedef List Lista; typedef int element; void InitL(Lista *l) { l->kursor = 0; for (int i = 0; i < 10000; i++) { l->p[i].sifra = 0; }} element EndL(Lista *l) { return l->kursor; } element FirstL(Lista *l) { return 0; } element NextL(element e, Lista *l) { if (e >= l->kursor) { return -1; } else { return e +1; }} element PreviousL(element e, Lista *l) { if (e <= l->kursor && e > 0) { return e -1; } else { return -1; }} element LocateL(zivotinja ziv, Lista *l) { for (int i = 0; i < 10000; i++) { if (l->p[i].sifra == ziv.sifra) { return i; }} return -1; } bool InsertL(zivotinja nova, element e , Lista *l) { if (l->kursor == 10000) { return false; } for (int i = l->kursor; i > e; i--) { l->p[i] = l->p[i-1]; } l->p[e] = nova; l->kursor++; return true; } bool DeleteL(element e, Lista *l) { if (l->kursor == 0 || e >= l->kursor) { return false; } l->kursor--; for (int i = e; i < l->kursor; i++) { l->p[i] = l->p[i+1]; } return true; } zivotinja RetrieveL(element e, Lista *l) { return l->p[e]; } void DeleteAll(Lista *l) { l->kursor = 0; }
You need to login to post a comment.