Return to Snippet

Revision: 60667
at November 12, 2012 05:42 by tsteyska


Initial Code
struct podaci{
       int sifra,datum,cijena;
       char naziv[20],vrsta[20];
};
struct lista{
       podaci pod[1000];
       int k;
};

typedef int tlistap;

int EndL(lista *L)
{
    return L->k;
}

int FirstL(lista *L)
{
    if (L->k==0)
       return EndL(L);
    else 
         return 0;
}

int NextL(int p, lista *L)
{
    if(p == (L->k)-1)
         return EndL(L);
    else
        return p+1;
}

int PreviousL(int p, lista *L)
{
    if (p>0)
       return p-1;
    else
        return 0;
}

int LocateL(podaci x, lista *L)
{
    for (int i=0; i < L->k; i++)
        if(x.sifra == (L->pod[i].sifra))
            return i;

    return EndL(L);
}

int InsertL(podaci x, int p, lista *L)
{
    if (p<0 || p > L->k)
       return 0;
    int pokazivac=L->k;
    for(int i=pokazivac-1; i>=p; i--)
    {
        L->pod[i+1] = L->pod[i];
    }
    L->pod[p]=x;
    L->k++;
    return 1;
}

int DeleteL(int p, lista *L)
{
    if (p<0 || p>=L->k)
       return 0;
    for(int i=p; i< L->k; i++)
        L->pod[i] = L->pod[i+1];
    L->k--;
    return 1;
}

podaci RetrieveL(int p, lista *L)
{
    return L->pod[p];
}

void DeleteAllL(lista *L)
{
    L->k=0;
}

lista *InitL(lista *L)
{
    L = new lista;
    for (int i=0; i<1000; i++)
    {
        L->pod[i].sifra=0;
        L->pod[i].datum=0;
    }
    L->k=0;
    return L;
}

Initial URL

                                

Initial Description
Implementacija liste pomocu polja

Initial Title
Z1_lista_polja.h

Initial Tags
podataka

Initial Language
C++