Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- //#include "lista_pokazivac.h"
- #include "lista_polje.h"
- using namespace std;
- int broj_pacijenata=0;
- void unos(list* lista) {
- cout << "Unesi maticni broj pacijenta: ";
- cin >> pacijent.mb;
- cout << "Unesi ime i prezime: ";
- cin.ignore();
- cin.getline(pacijent.ime, 20);
- cout << "Unesi godine: ";
- cin >> pacijent.godine;
- int tocno=Insert(pacijent, End(lista), lista);
- if (tocno==1) {
- cout << "\n1 - pacijent je unesen.\n\n";
- broj_pacijenata++;
- }
- else
- cout << "\n0 - pacijent nije unesen.\n\n";
- }
- void ispis(list* lista) {
- if (broj_pacijenata==0) {cout<<"Nema pacijenata!\n\n"; return;}
- int i=0;
- tpac pomocni[100];
- elem pozicija=First(lista);
- while(pozicija != End(lista)) {
- pomocni[i] = Retreive(pozicija, lista);
- pozicija = Next(pozicija, lista);
- i++;
- }
- bool zamjena = true;
- for (i=broj_pacijenata-1;i>0 && zamjena; i--) {
- zamjena = false;
- for (int j=0;j<i;j++)
- if(pomocni[j].mb > pomocni[j+1].mb) {
- tpac pom = pomocni[j];
- pomocni[j] = pomocni[j+1];
- pomocni[j+1] = pom;
- zamjena = true;
- }
- }
- cout << "Sortirani ispis prema mat.broju\n\n";
- for(i=0;i<broj_pacijenata;i++){
- cout << "Maticni broj: " << pomocni[i].mb<<endl;
- cout << "Ime i prezime: " << pomocni[i].ime<<endl;
- cout << "Godine: " << pomocni[i].godine<<endl<<endl;
- }
- }
- void pretrazi(list* lista) {
- if (broj_pacijenata==0) {cout<<"Nema pacijenata!\n\n"; return;}
- int i=0;
- tpac pomocni;
- elem pozicija=First(lista);
- while(pozicija!=End(lista)){
- pomocni=Retreive(pozicija, lista);
- if(pomocni.godine<18){
- cout << "Maticni broj: " << pomocni.mb<<endl;
- cout << "Ime i prezime: " << pomocni.ime<<endl;
- cout << "Godine: " << pomocni.godine<<endl<<endl;
- i++;
- }
- pozicija=Next(pozicija, lista);
- }
- cout << "Mladjih od 18 god ima " <<i<<endl<<endl;
- }
- void brisanje(list* lista, int maticni) {
- tpac pomocni;
- int obrisan=0;
- elem pozicija=First(lista);
- while(pozicija!=End(lista)){
- pomocni=Retreive(pozicija, lista);
- if(pomocni.mb==maticni){
- obrisan = Delete(pozicija, lista);
- if (obrisan) {
- cout << "\n1 - pacijent je obrisan\n\n";
- broj_pacijenata--;
- }
- else {
- cout << "\n0 - pacijent nije obrisan\n\n";
- }
- }
- pozicija=Next(pozicija, lista);
- }
- if (!obrisan)
- cout << "Ne postoji pacijent s unesenim maticnim brojem\n\n";
- }
- int main() {
- int izbor, mat_br;
- list* lista;
- lista = Init(lista);
- do {
- cout << "1. Unos pacijenata\n";
- cout << "2. Ispis pacijenata prema maticnom broju\n";
- cout << "3. Ispis maloljetnika i njihov broj\n";
- cout << "4. Brisanje pacijenta\n";
- cout << "9. Izlaz\n";
- cout << "Vas izbor: ";
- cin >> izbor;
- cout << "-----------------------------" << endl;
- switch(izbor) {
- case 1:
- unos(lista);
- break;
- case 2:
- ispis(lista);
- break;
- case 3:
- pretrazi(lista);
- break;
- case 4:
- if (broj_pacijenata==0) {cout<<"Nema pacijenata!\n\n";break;}
- cout << "Unesi maticni broj za brisanje pacijenta: ";
- cin >> mat_br;
- brisanje(lista, mat_br);
- break;
- case 9:
- break;
- }
- } while (izbor!=9);
- cout<<endl;
- system("PAUSE");
- return 0;
- }
Add Comment
Please, Sign In to add comment