Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using namespace std;
- struct pac {
- int mbr, god;
- char ime[20], prez [25];
- }p;
- struct lista {
- pac P;
- lista *Sljed;
- }L;
- typedef struct lista *element;
- element FirstL(lista *L){
- return L;
- };
- element EndL(lista *L){
- lista *PL;
- PL = L;
- while(PL->Sljed != NULL){
- PL = PL->Sljed;}
- return PL;
- };
- element NextL(element p, lista *L){
- if (p->Sljed == NULL){
- cout << "Trazeni element ne postoji" << endl;
- exit(0);
- }
- else{
- lista *PL;
- PL = p->Sljed;
- return PL; }
- };
- element PreviousL(element p, lista *L){
- lista *PL;
- PL = L;
- while((PL->Sljed != NULL) && (PL->Sljed !=p)) PL = PL->Sljed;
- if(PL->Sljed != NULL) return PL;
- else {cout << "Trazeni element ne postoji" << endl;
- exit(0);}
- };
- element LocateL(int x, lista *L) {
- lista *PL;
- PL = L;
- while((PL->Sljed != NULL) && ((PL->Sljed)->P.mbr != x))
- PL = PL->Sljed;
- return PL;
- };
- int InsertL(pac x, element p, lista *L){
- while (L->Sljed) L = L->Sljed;
- lista *PL;
- PL = new lista;
- PL->P.mbr = x.mbr;
- PL->P.god=x.god;
- strcpy(PL->P.ime, x.ime);
- strcpy(PL->P.prez, x.prez);
- PL-> Sljed= NULL;
- L->Sljed = PL;
- (L ->Sljed)->Sljed = NULL;
- return 1;
- };
- int DeleteL (element p, lista *L){
- int izb = 0;
- element pp;
- pac bpp;
- cout << "Upisite Maticni broj pacijenta kojeg zelite obrisati: " ;
- cin >> bpp.mbr;
- while(L->Sljed){
- if((L->Sljed)->P.mbr == bpp.mbr) {
- pp = (L->Sljed)->Sljed;
- delete L->Sljed;
- L->Sljed = pp;
- return 1; }
- L = L->Sljed;}
- cout << "Pacijent s upisanim maticnim brojem ne postoji" << endl;
- return 0;
- };
- pac RetriveL (element p, lista *L){
- pac x;
- x = (p->Sljed)->P;
- return x;
- };
- void DeleteAllL(lista *L){
- L->Sljed = NULL;
- };
- void sort(lista *L){
- lista *pred, *tek, *sljed;
- int indikator, brojac=0;
- do{
- indikator = 0;
- tek = L->Sljed;
- pred = L;
- while(tek->Sljed){
- sljed = tek->Sljed;
- if (tek->P.mbr > sljed->P.mbr){
- pred -> Sljed = sljed;
- tek->Sljed = sljed->Sljed;
- sljed->Sljed=tek;
- indikator = 1; }
- pred = pred->Sljed;
- tek = pred->Sljed; }
- }while(indikator==1);
- };
- int pret (lista *L){
- int br = 0;
- while(L->Sljed){
- if((L->Sljed)->P.god < 18){
- cout << endl << "Maticni broj: " << (L->Sljed)->P.mbr << endl;
- cout << "Ime: " << (L->Sljed)->P.ime << endl;
- cout << "Prezime: " << (L->Sljed)->P.prez << endl;
- cout << "Godine: " << (L->Sljed)->P.god << endl;
- br++;
- }
- L = L->Sljed;}
- return br;
- };
- void isp (lista *L){
- cout << "--Ispis sadrzaja liste od najmanjeg maticnog broja--" << endl;
- cout << "----------------------------------------------------" ;
- while (L->Sljed){
- cout << endl << "Maticni broj: " << (L->Sljed)->P.mbr << endl;
- cout << "Ime: " << (L->Sljed)->P.ime << endl;
- cout << "Prezime: " <<(L->Sljed)->P.prez << endl;
- cout << "Godine: " << (L->Sljed)->P.god << endl;
- L = L->Sljed; }
- };
Add Comment
Please, Sign In to add comment