|
|
|
Zadatak iz strukture podataka.cpp
1
DarioFOI
Program za evidenciju pacijenata. Unutar programa se nalaze funkcije za dodavanje, ispis i brisanje pacijenata.
#include <iostream>
#include "lista_polje.h"
//#include "lista_pokazivac.h"
using namespace std;
int dodavanje(list*lista){
cout<<"Dodavanje pacijenta"<<endl;
cout<<"Unesite ime pacijenta: "<<endl;
cin.ignore();
cin.getline(pacijent_novi[0].ime_prez,40);
cout<<"Unesite maticni broj pacijenta: "<<endl;
cin>>pacijent_novi[0].maticni;
cout<<"Unesite starost pacijenta: "<<endl;
cin>>pacijent_novi[0].godine;
if (InsertL(pacijent_novi[0],EndL(lista),lista)){
return 1;
}
else{
return 0;
}
}
void ispis_mladi_18(list*lista){
int j;
j=0;
for(int i=0;i<EndL(lista);i++){
pacijent_mladi[i]=RetrieveL(i,lista);
if(pacijent_mladi[i].godine<18){
cout<<"Maticni br. pacijenta: "<<pacijent_mladi[i].maticni<<endl;
cout<<"Ime pacijenta: "<<pacijent_mladi[i].ime_prez<<endl;
cout<<"Godine pacijenta: "<<pacijent_mladi[i].godine<<endl;
j++;
}
}
cout<<"Ukupan broj pacijenata mladih od 18: "<<j<<endl;
}
void ispis(list*lista){
for(int i=0;i<EndL(lista);i++){
pacijent[i]=RetrieveL(i,lista);
}
int i;
tpacijent temp;
int dim = EndL(lista);
bool swapped = true;
while (swapped)
{
swapped = false;
for (i = 0; i < dim - 1; i++)
{
if (pacijent[i].maticni > pacijent[i + 1].maticni )
{
temp = pacijent[i];
pacijent[i]= pacijent[i + 1];
pacijent[i + 1] = temp;
swapped = true;
}
}
}
for(int i=0;i<EndL(lista);i++){
cout<<"Maticni br. pacijenta: "<<pacijent[i].maticni<<endl;
cout<<"Ime pacijenata: "<<pacijent[i].ime_prez<<endl;
cout<<"Godine pacijenata: "<<pacijent[i].godine<<endl;
}
}
int brisanje(list*lista){
cout<<"Unesite maticni broj pacijenta kojeg zelite obrisati!"<<endl;
int maticni;
cin>>maticni;
if(DeleteL(LocateL(maticni,lista),lista)){
cout<<"Pacijent s maticnim brojem "<<maticni<<" je obrisan."<<endl;
return 1;
}
else{
return 0;
}
}
int main(){
int unos;
list*lista;
lista=new list;
InitL(lista);
do{
cout<<"---------------IZBORNIK---------------"<<endl;
cout<<"1. Dodavanje pacijenta "<<endl;
cout<<"2. Brisanje pacijenta"<<endl;
cout<<"3. Ispis svih pacijenata"<<endl;
cout<<"4. Ispis pacijenata mladih od 18"<<endl;
cout<<"9. Izlaz iz programa"<<endl;
cout<<"--------------------------------------"<<endl;
cin>>unos;
switch(unos){
case 1:
dodavanje(lista);
break;
case 2:
brisanje(lista);
break;
case 3:
ispis(lista);
break;
case 4:
ispis_mladi_18(lista);
break;
case 9: break;
default: break;
}
}while(unos!=9);
return 0;
}




There are currently no comments for this snippet.