Return to Snippet

Revision: 60716
at November 12, 2012 08:05 by mmilutin2


Initial Code
using namespace std;
int sifra=1;
int kursor;

struct tzivotinja {
       int sifra;
       char vrsta[30],naziv[30];
       float cijena;
       tm datum;
       };

tzivotinja lista[1000];

void initL(tzivotinja *lista){
     kursor = 1;
     }
     
int endL(tzivotinja *lista){
    return kursor;
    }
    
int firstL(tzivotinja *lista){
    return 0;
    }

void insert2(tzivotinja tekuci, int p, tzivotinja *lista){
     lista[p] = tekuci;
     }

tzivotinja * nextL(int p,tzivotinja *lista){
    if(p == endL(lista)) return lista;
    else return &lista[p+1];
    }
    
int previousL(int p,tzivotinja *lista){
    if(p == firstL(lista)) return -1;
    else return p-1;
    }

tzivotinja retrieveL(int p, tzivotinja *lista){
           return *(lista+p);
           }


int insertL(tzivotinja *novi, int p, tzivotinja *lista){
     --p;
     (lista+p)->sifra = novi->sifra;
     strcpy((lista+p)->naziv,novi->naziv);
     strcpy((lista+p)->vrsta,novi->vrsta);
     (lista+p)->cijena = novi->cijena;
     ((lista+p)->datum).tm_mday = (novi->datum).tm_mday;
     ((lista+p)->datum).tm_mon = (novi->datum).tm_mon;
     ((lista+p)->datum).tm_year = (novi->datum).tm_year;
     sifra++;
     kursor++;
     return((lista+p)->sifra == novi->sifra);
     }

void Vrati(tzivotinja element, int p, tzivotinja *lista){
     lista[p]=element;
     }

void reverse(tzivotinja * lista){
     int broj_elemenata = endL(lista)-1;
     for(int i=0;i<=broj_elemenata/2;i++) swap(lista[i],lista[broj_elemenata-i-1]);
     
     }
     
void deleteL(int p, tzivotinja *lista){
     for(int i=p;i<endL(lista);i++){
             lista[i].sifra = lista[i+1].sifra;
             strcpy((lista+i)->naziv,(lista+i+1)->naziv);
             strcpy((lista+i)->vrsta,(lista+i+1)->vrsta);
             lista[i].cijena = lista[i+1].cijena;
             ((lista+i)->datum).tm_mday = (lista+i+1)->datum.tm_mday;
             ((lista+i)->datum).tm_mon = (lista+i+1)->datum.tm_mon;
             ((lista+i)->datum).tm_year = (lista+i+1)->datum.tm_year;
             }
     kursor--;
     }

Initial URL


Initial Description
Pošto se radi o strogo zadanim funkcijama koje su iste svim studentima, nema nekih prevelikih razlika u kodu osim u drugačijim nazivima varijabli te rasporedu pisanja samih funkcija.

Initial Title
Zadatak 1 Lista polje Mario Milutin

Initial Tags


Initial Language
C++