/ Published in: C++
implementacija liste pomoću polja
Expand |
Embed | Plain Text
#include <iostream> using namespace std; struct ljubimci_polje { int sifra[40], cijena[40]; string naziv[40], vrsta[40], datum_dostave[40]; int kursor; }; int dkcf78(ljubimci_polje *jen, int ind, int fload, string douple, string unsignet, string strink, int lonk) { for (int elze=jen->kursor-1; elze>=lonk; elze--) { jen->cijena[elze+1]=jen->cijena[elze]; } jen->sifra[lonk]=ind; jen->cijena[lonk]=fload; jen->datum_dostave[lonk]=douple; jen->naziv[lonk]=unsignet; jen->vrsta[lonk]=strink; jen->kursor++; for (int i=0; i<jen->kursor; i++) { if(ind==jen->sifra[i]) return 1; } return 0; } void vax_11_780 (ljubimci_polje *jen) //da li ste znali da je VAX-11/780 bilo prvo ra��unalo koje je implementirano pomo��u vax arhitekture { if (jen->kursor==0) { cout << "\nNemate ni jedan zapis u listi koja je implementirana uz pomocu polja,\ndodajte neke, molim lijepo.\n"; return; } int elemenat=jen->kursor-1; cout << "\nZivotinjice koju su upisane u listu koja je implementirana sa poljem:\n"; while(elemenat>=0) { cout << "\nSifra: " << jen->sifra[elemenat]; cout << "\nVrsta: " << jen->vrsta[elemenat]; cout << "\nNaziv: " << jen->naziv[elemenat]; cout << "\nCijena: " << jen->cijena[elemenat]; cout << "\nDatum dostave: " << jen->datum_dostave[elemenat] << "\n---------------------------\n\n"; elemenat=elemenat-1; } } void epe54b (ljubimci_polje *varijabletina) { if (varijabletina->kursor==0) { cout << "\nNemate ni jedan zapis u listi koja je implementirana uz pomocu polja,\ndodajte neke, molim lijepo.\n"; return; } int dan, mjesec, godina, kanter=0; string temp; int elemenat=0; while(elemenat!=varijabletina->kursor) { temp=varijabletina->datum_dostave[elemenat].substr(0,2); dan=atoi(temp.c_str()); temp=varijabletina->datum_dostave[elemenat].substr(3,2); mjesec=atoi(temp.c_str()); temp=varijabletina->datum_dostave[elemenat].substr(6,4); godina=atoi(temp.c_str()); if((dan>=23 && mjesec>=9 && godina>=2012) || (mjesec>9 && godina>=2012)) //provjera da li je ljubimac dostavljen u listu koja je implementirana sa poljem nakon 23.rujna 2012 { cout << "\nSifra: " << varijabletina->sifra[elemenat]; cout << "\nVrsta: " << varijabletina->vrsta[elemenat]; cout << "\nNaziv: " << varijabletina->naziv[elemenat]; cout << "\nCijena: " << varijabletina->cijena[elemenat]; cout << "\nDatum dostave: " << varijabletina->datum_dostave[elemenat] << "\n---------------------------\n\n"; kanter++; } elemenat+=1; } cout << "Postoji u listi koja je implementirana poljem " << kanter << " zivotinje koje su dostavljene nakon 23.rujna 2012.\n\n"; } int zmakni(ljubimci_polje *lista, string nasiv) { if (lista->kursor==0) { cout << "\nNemate ni jedan zapis u listi koja je implementirana uz pomocu polja, \nodajte neke, molim lijepo.\n"; return 3; } int kanter=0; for(int elemenat=0; elemenat<lista->kursor;elemenat++) { if(lista->naziv[elemenat]==nasiv) { for (int elem=elemenat; elem<lista->kursor; elem++) { lista->sifra[elem]=lista->sifra[elem+1]; lista->vrsta[elem]=lista->vrsta[elem+1]; lista->naziv[elem]=lista->naziv[elem+1]; lista->cijena[elem]=lista->cijena[elem+1]; lista->datum_dostave[elem]=lista->datum_dostave[elem+1]; kanter++; lista->kursor--; } } } if (kanter==0) { cout << "\nTrazeni zapis nije nadjen u listi.\n"; return 3; //nema smisla traziti da li je "brisanje" uspjesno ako nista ne brise (dio ispod - return 1 ili 0) } for (int i=0; i<lista->kursor; i++) { if(nasiv==lista->naziv[i]) return 0; } return 1; } int brisi_ga(ljubimci_polje *lista, string vrst) { int kanter=0; for(int elemenat=0; elemenat<lista->kursor;elemenat++) { if(lista->vrsta[elemenat]==vrst) { for (int elem=elemenat; elem<lista->kursor; elem++) { lista->sifra[elem]=lista->sifra[elem+1]; lista->vrsta[elem]=lista->vrsta[elem+1]; lista->naziv[elem]=lista->naziv[elem+1]; lista->cijena[elem]=lista->cijena[elem+1]; lista->datum_dostave[elem]=lista->datum_dostave[elem+1]; kanter++; lista->kursor--; } } } if (kanter==0) { cout << "\nTrazeni zapis nije nadjen u listi.\n"; return 3; //nema smisla traziti da li je "brisanje" uspjesno ako nista ne brise (dio ispod - return 1 ili 0) } for (int i=0; i<lista->kursor; i++) { if(vrst==lista->vrsta[i]) return 0; } return 1; }
You need to login to post a comment.
