Revision: 60680
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 12, 2012 06:29 by ivandokuzovic
Initial Code
struct tDatum{
short dan, godina;
char mjesec[8];
};
struct tZivotinja{
int sifra;
char vrsta[50],naziv[50];
tDatum datum;
float cijena;
};
struct tLista{
tZivotinja zivotinja;
tLista *slijedeci;
};
tLista *lista=new tLista;
int sifra=1,br_elem=0;
int br=0;
void InitL(tLista *lista){
lista->slijedeci=NULL;
}
int EndL(tLista *lista){
tLista* tekuci=lista;
int p=0;
while(tekuci->slijedeci){
tekuci=tekuci->slijedeci;
p++;
}
return p;
}
int FirstL(tLista* lista){
if(lista->slijedeci==NULL)
return EndL(lista);
return 0;
}
int PreviousL(int p,tLista* lista){
if(p==FirstL(lista))
return -1;
return p-1;
}
int NextL(int p,tLista* lista){
if(p==EndL(lista)) return -1;
if(p==PreviousL(EndL(lista),lista))
return EndL(lista);
return p+1;
}
int LocateL(char x[],tLista* lista){
tLista *tekuci=lista;
int p=0;
while(tekuci){
if(tekuci->slijedeci==NULL)
return EndL(lista);
if(!strcmp((tekuci->slijedeci)->zivotinja.naziv,x)||(br==1&&!strcmp((tekuci->slijedeci)->zivotinja.vrsta,x)))
return p;
tekuci=tekuci->slijedeci;
p++;
}
return EndL(lista);
}
void InsertL(tZivotinja x,int p,tLista *lista) {
tLista *zadnji=lista;
for(int i=0;i<p;i++) zadnji=zadnji->slijedeci;
tLista *novi = new tLista;
zadnji->slijedeci=novi;
novi->zivotinja=x;
novi->slijedeci=NULL;
}
void DeleteL(int p, tLista *lista) {
tLista *brisi = lista->slijedeci,*prethodni=lista;
for(int i=0;i<p;i++) {
prethodni=brisi;
brisi=brisi->slijedeci;
}
prethodni->slijedeci=brisi->slijedeci;
delete brisi;
}
tZivotinja RetrieveL(int p,tLista* lista) {
tLista *tekuci = lista->slijedeci;
for(int i=0;i<p;i++)
tekuci=tekuci->slijedeci;
return tekuci->zivotinja;
}
void DeleteAll(tLista* lista) {
tLista* prethodni=lista,*tekuci=lista->slijedeci;
while(tekuci) {
delete prethodni;
prethodni=tekuci;
tekuci=tekuci->slijedeci;
}
delete prethodni;
lista=NULL;
}
Initial URL
Initial Description
implementacija liste pomocu polja
Initial Title
lista_pokazivaci.h ivan
Initial Tags
Initial Language
C++