Return to Snippet

Revision: 60500
at November 11, 2012 01:16 by gregorinalana


Initial Code
struct lista
{
	int sifra, cijena, dan, mjesec, godina;
    char vrsta[50], naziv[50];
    lista *sljedeci;
};
struct podaci
{
	int sifra, cijena, dan, mjesec, godina;
	char vrsta[50], naziv[50];
}zivotinja;
typedef struct lista* element;
lista* InitL(lista *l)
{
	l = new lista;
	l -> sljedeci = NULL;
	return l;
}
bool InsertL(podaci p, element e, lista *l)
{
	lista *z = l, *novi = new lista;
	while(z -> sljedeci != e)
		z = z -> sljedeci;
	novi -> sifra = p.sifra;
	strcpy(novi -> vrsta, p.vrsta);
	strcpy(novi -> naziv, p.naziv);
	novi -> cijena = p.cijena;
	novi -> dan = p.dan;
	novi -> mjesec = p.mjesec;
	novi -> godina = p.godina;
	novi -> sljedeci = e;
	z -> sljedeci = novi;
	return 1;
}
element EndL(lista *l)
{
	lista *z = l;
	while(z)
		z = z -> sljedeci;
	return z;
}
element FirstL(lista *l)
{
	if(l -> sljedeci == NULL)
		return EndL(l);
	return l -> sljedeci;
}
podaci RetrieveL(element e, lista *l)
{
	zivotinja.sifra = e -> sifra;
	strcpy(zivotinja.vrsta, e -> vrsta);
	strcpy(zivotinja.naziv, e -> naziv);
	zivotinja.cijena = e -> cijena;
	zivotinja.dan = e -> dan;
	zivotinja.mjesec = e -> mjesec;
	zivotinja.godina = e -> godina;
	return zivotinja;
}
element PreviousL(element e, lista *l)
{
	lista *z = l -> sljedeci;
	if(e == l -> sljedeci)
		exit(0);
	while(e != z -> sljedeci && z -> sljedeci != NULL)
		z = z -> sljedeci;
	return z;
}
element NextL(element e, lista *l)
{
	return e -> sljedeci;
}
bool DeleteL(element e, lista *l)
{
	lista *z = l;
	while(z -> sljedeci != e)
		z = z -> sljedeci;
	z -> sljedeci = e -> sljedeci;
	delete e;
	return 1;
}
element LocateL(podaci p, lista *l)
{
	lista *z = l -> sljedeci;
	while(z != NULL && z -> sifra != p.sifra)
		z = z -> sljedeci;
	return z;
}
void DeleteAllL(lista *l)
{
	element z;
	while(l -> sljedeci != NULL)
	{
		z = l -> sljedeci;
		l -> sljedeci = l -> sljedeci -> sljedeci;
		delete z;
	}
}

Initial URL
http://snipplr.com/edit/68227

Initial Description
Lista pokazivaca koji se koriste u glavnom programu

Initial Title
listaPokazivac.h

Initial Tags

                                

Initial Language
C++