Revision: 60765
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 12, 2012 08:54 by ihranj
Initial Code
#include <iostream>
#include <string.h>
using namespace std;
struct tzivotinje{
int sifra;
char vrsta[51];
char naziv[51];
int cijena;
float datum;
int godina;
};
struct tlista{
tzivotinje zivotinje;
tlista *sljedeci;
};
typedef tlista *element;
element FirstL(tlista *l){
return l->sljedeci;
}
element EndL(tlista *l){
tlista *tekuci = l;
while(tekuci->sljedeci)
tekuci=tekuci->sljedeci;
return tekuci;
}
element NextL(element p, tlista *l){
if(p->sljedeci==NULL) return EndL(l);
return p->sljedeci;
}
element PreviousL(element p, tlista *l){
tlista *tekuci = l->sljedeci;
while(p != tekuci->sljedeci && tekuci->sljedeci!=NULL)
tekuci=tekuci->sljedeci;
return tekuci;
}
element LocateL(tzivotinje z, tlista *l){
element tekuci;
tekuci = l->sljedeci;
while(tekuci){
if(z.naziv!=0){
if(strcmp(z.naziv,tekuci->zivotinje.naziv)==0)
return tekuci;
}
if(z.vrsta!=0) {
if(strcmp(z.vrsta,tekuci->zivotinje.vrsta)==0)
return tekuci;
}
tekuci = tekuci->sljedeci;
}
return EndL(l);
}
int InsertL(tzivotinje z, tlista *p, tlista *l){
tlista *tekuci = p;
tlista *novi = new tlista;
if(p==EndL(l)){
novi->sljedeci=NULL;
tekuci->sljedeci = novi;
tekuci->zivotinje = z;
}
else if(p==FirstL(l)){
novi->sljedeci = tekuci;
l->sljedeci = novi;
novi->zivotinje = z;
}
else{
tlista *prethodni = PreviousL(p,l);
novi->sljedeci=tekuci;
prethodni->sljedeci = novi;
novi->zivotinje = z;
}
if(tekuci->zivotinje.sifra==z.sifra)
return 1;
else
return 0;
}
int DeleteL(element p, tlista *l){
element prethodni, tekuci;
tekuci = p;
if(p==FirstL(l)){
l->sljedeci = tekuci->sljedeci;
delete tekuci;
return 1;
}
else{
prethodni = PreviousL(tekuci,l);
prethodni->sljedeci = tekuci->sljedeci;
delete tekuci;
return 1;
}
return 0;
}
tzivotinje RetrieveL(element p, tlista *l){
return p->zivotinje;
}
element DeleteAllL(tlista *l){
l->sljedeci = EndL(l);
}
tlista* InitL(tlista *l){
l = new tlista;
tlista *zadnji = new tlista;
l->sljedeci = zadnji;
zadnji->sljedeci = NULL;
return l;
}
Initial URL
Initial Description
funkcija zaglavlja koja će nam biti potrebna u main programu
Initial Title
hranj_lista_pokazivaci.h
Initial Tags
Initial Language
C++