G2A Many GEOs
SHARE
TWEET

Untitled

Matrxi999 Mar 31st, 2020 86 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. MAIN CPP
  2. #include <iostream>
  3. #include <fstream>
  4. #include <ctime>
  5. #include <cstdlib>
  6. #include <iomanip>
  7. #include <time.h>
  8. #include <regex>
  9. #include "Lekarz.h"
  10.  
  11. using namespace std;
  12.  
  13. void WyborMiesiaca(string Miesiac, string &MiesiacINT)
  14. {
  15.     if(Miesiac=="Styczen") MiesiacINT="1";
  16.     else if(Miesiac=="Luty") MiesiacINT="2";
  17.     else if(Miesiac=="Marzec") MiesiacINT="3";
  18.     else if(Miesiac=="Kwiecien") MiesiacINT="4";
  19.     else if(Miesiac=="Maj") MiesiacINT="5";
  20.     else if(Miesiac=="Czerwiec") MiesiacINT="6";
  21.     else if(Miesiac=="Lipiec") MiesiacINT="7";
  22.     else if(Miesiac=="Sierpien") MiesiacINT="8";
  23.     else if(Miesiac=="Wrzesien") MiesiacINT="9";
  24.     else if(Miesiac=="Pazdziernik") MiesiacINT="10";
  25.     else if(Miesiac=="Listopad") MiesiacINT="11";
  26.     else if(Miesiac=="Grudzien") MiesiacINT="12";
  27.     else
  28.     {
  29.         cout << "Taki miesiac nie istnieje, prosze sprobowac jeszcze raz" << endl;
  30.         exit(0);
  31.     }
  32. }
  33.  
  34. int main()
  35. {
  36.     cout << "Witaj w systemie rejestracji pacjentow \n"
  37.             "Wybierz interesujaca cie specjalizacje: \n " << endl;
  38.  
  39.     ifstream Specjalizacje;
  40.     Specjalizacje.open("../System_rejestracji_przychodni/Specjalizacje.txt", ios::in);
  41.  
  42.     string linijkaSpecjalizacji;
  43.     if(Specjalizacje.good())
  44.         {
  45.             do
  46.             {
  47.                 getline(Specjalizacje, linijkaSpecjalizacji);
  48.                 cout<<linijkaSpecjalizacji<<endl;
  49.             }while(!Specjalizacje.eof());
  50.         }
  51.     Specjalizacje.close();
  52.  
  53.     string Specjalizacja;
  54.     getline(cin, Specjalizacja);
  55.  
  56.     cout << "--------------------------------------------------------------------------------------" << endl << endl;;
  57.  
  58.  
  59.     if((Specjalizacja != "Internista") && (Specjalizacja != "Ortopeda") && (Specjalizacja != "Chirurg") && (Specjalizacja != "Dermatolog") && (Specjalizacja != "Okulista") && (Specjalizacja != "Endokrynolog") && (Specjalizacja != "Stomatolog") && (Specjalizacja != "Urolog") && (Specjalizacja  != "Ginekolog") && (Specjalizacja != "Pediatra"))
  60.     {
  61.         cout << "Niestety taki specjalista nie znajduje sie w naszej przychodni. \n"
  62.                 "Prosze sprobowac jeszcze raz" << endl;
  63.         getline(cin, Specjalizacja);
  64.     }
  65.  
  66.     Lekarz l[40]; //0-39
  67.     for (int i=0; i<40; i++) //tworzenie wszystkich lekarzy jako obiekty
  68.     {
  69.         l[i].nr_lekarza=i+1;
  70.         l[i].wczytaj();
  71.  
  72.         if(Specjalizacja==l[i].specjalizacja)
  73.         {
  74.             l[i].wyswietl();
  75.         }
  76.  
  77.     }
  78.  
  79.     cout << "Wybierz, w jakim miesiacu interesuje cie wizyta (Pelna nazwa bez polskich znakow): ";
  80.  
  81.     string Miesiac;
  82.     string MiesiacINT;
  83.     getline(cin, Miesiac);
  84.  
  85.     cout << "--------------------------------------------------------------------------------------";
  86.  
  87.     WyborMiesiaca(Miesiac, MiesiacINT);
  88.  
  89.     cout << endl << "Oto lista specjalistow ktora przyjmuje w miesiacu: " << Miesiac << endl << endl;
  90.  
  91.     int sumaM=0;
  92.  
  93.     for (int i=0; i<40; i++) //wyświetlanie po podaniu miesiąca
  94.     {
  95.         if(Specjalizacja==l[i].specjalizacja)
  96.         {
  97.             if(l[i].miesiac.find(MiesiacINT) != string::npos)
  98.             {
  99.                 l[i].wyswietl();
  100.                 sumaM++;
  101.             }
  102.         }
  103.     }
  104.  
  105.     if(sumaM>0)
  106.         cout << "W tym miesiacu przyjmuje " << sumaM << " specjalistow:" << endl;
  107.     else
  108.         cout << "Niestety w tym miesiacu nie przyjmuje zaden specjalista" << endl;
  109.  
  110.     cout << "Wybierz, w ktorym dniu miesiaca interesuje cie wizyta: ";
  111.  
  112.     string Dzien;
  113.     getline(cin, Dzien);
  114.  
  115.     cout << "--------------------------------------------------------------------------------------" << endl;
  116.  
  117.     int sumaD=0;
  118.     for (int i=0; i<40; i++) //wyświetlanie po podaniu dnia
  119.     {
  120.         if(Specjalizacja==l[i].specjalizacja)
  121.         {
  122.             if(l[i].miesiac.find(MiesiacINT) != string::npos)
  123.             {
  124.                 if(l[i].dzien.find(Dzien) != string ::npos)
  125.                 {
  126.                     l[i].wyswietlGodz();
  127.                     sumaD++;
  128.                 }
  129.             }
  130.         }
  131.     }
  132.  
  133.     if(sumaD>0)
  134.         cout << "W tym miesiacu tego dnia przyjmuje " << sumaD << " specjalistow:" << endl;
  135.     else
  136.         cout << "Niestety w tym dniu nie przyjmuje zaden specjalista" << endl;
  137.  
  138.     cout << "Podaj numer lekarza do ktorego chcialbys sie zapisac" << endl;
  139.  
  140.     int numer_l;
  141.     cin >> numer_l;
  142.  
  143.     for (int i=0; i<40; i++) //zapis na wizyte po podaniu numeru lekarza
  144.     {
  145.         if(Specjalizacja==l[i].specjalizacja)
  146.         {
  147.             if(l[i].miesiac.find(MiesiacINT) != string::npos)
  148.             {
  149.                 if(l[i].dzien.find(Dzien) != string ::npos)
  150.                 {
  151.                     if(numer_l==l[i].nr_lekarza)
  152.                     {
  153.                         l[i].zapisNaWizyte();
  154.                     }
  155.                 }
  156.             }
  157.         }
  158.     }
  159.  
  160.     cout << "Po dodaniu wizyty: " << endl;
  161.  
  162.     for (int i=0; i<40; i++) //wyświetlanie po podaniu dnia
  163.     {
  164.         if(Specjalizacja==l[i].specjalizacja)
  165.         {
  166.             if(l[i].miesiac.find(MiesiacINT) != string::npos)
  167.             {
  168.                 if(l[i].dzien.find(Dzien) != string ::npos)
  169.                 {
  170.                     l[i].wyswietlGodz();
  171.                     sumaD++;
  172.                 }
  173.             }
  174.         }
  175.     }
  176.  
  177.  
  178.     return 0;
  179. }
  180.  
  181.  
  182. PLIK ŹRÓDŁOWY
  183. #include <iostream>
  184. #include <fstream>
  185. #include <cstdlib>
  186. #include <iomanip>
  187. #include "Lekarz.h"
  188.  
  189. using namespace std;
  190.  
  191. void Lekarz::wczytaj()
  192. {
  193.     ifstream Lekarze;
  194.     Lekarze.open("../System_rejestracji_przychodni/Lekarze.txt", ios::in);
  195.  
  196.     if(Lekarze.good()==false)
  197.     {
  198.         cout<<"Nie udalo sie wczytac listy lekarzy"<<endl;
  199.         exit(0);
  200.     }
  201.  
  202.     int nr_linii=(nr_lekarza-1)*8+1;
  203.     int aktualny_nr=1;
  204.     string linia;
  205.  
  206.     while(getline(Lekarze, linia))
  207.     {
  208.         if(aktualny_nr==nr_linii) imie=linia;
  209.         if(aktualny_nr==nr_linii+1) nazwisko=linia;
  210.         if(aktualny_nr==nr_linii+2) specjalizacja=linia;
  211.         if(aktualny_nr==nr_linii+3) miesiac=linia;
  212.         if(aktualny_nr==nr_linii+4) dzien=linia;
  213.         if(aktualny_nr==nr_linii+5) godzina_roz=atoi(linia.c_str());
  214.         if(aktualny_nr==nr_linii+6) godzina_kon=atoi(linia.c_str());
  215.         if(aktualny_nr==nr_linii+7) wizyty=linia;
  216.  
  217.         aktualny_nr++;
  218.     }
  219.     Lekarze.close();
  220. }
  221.  
  222. void Lekarz::wyswietl()
  223. {
  224.     cout << "Numer Lekarza: " << nr_lekarza << endl;
  225.     cout << "Imie Lekarza: " <<imie << endl;
  226.     cout << "Nazwisko Lekarza: " <<nazwisko << endl;
  227.     cout << "Specjalizacja Lekarza: " <<specjalizacja << endl;
  228.     //cout << miesiac << endl;
  229.     //cout << dzien << endl;
  230.     cout << endl;
  231. }
  232.  
  233. void Lekarz::wyswietlGodz()
  234. {
  235.     cout << "Numer Lekarza: " << nr_lekarza << endl;
  236.     cout << "Imie Lekarza: " <<imie << endl;
  237.     cout << "Nazwisko Lekarza: " <<nazwisko << endl;
  238.     cout << "Specjalizacja Lekarza: " <<specjalizacja << endl;
  239.     //cout << miesiac << endl;
  240.     //cout << dzien << endl;
  241.     cout << "Godzina rozpoczecia pracy lekarza: " << godzina_roz << ":00" << endl;
  242.     cout << "Godzina zakoczenia pracy lekarza: " << godzina_kon << ":00" << endl;
  243.     if(wizyty=="")
  244.         cout << "Wszystkie wizyty sa wolne" << endl;
  245.     else
  246.         cout << "Zajete wizyty: " << wizyty << endl;
  247.     cout << endl;
  248. }
  249.  
  250. void Lekarz::zapisNaWizyte()
  251. {
  252.     cout << "Prosze podac godzine na ktora chcialby sie Pan"
  253.             "/Pani zapisac (Zapisy prowadzimy jedynie w godzinach ,:00, ,:15, ,:30, ,:45): " << endl;
  254.  
  255.     string godzina;
  256.     string dopuszczalna_kon1 = ",00";
  257.     string dopuszczalna_kon2 = ",15";
  258.     string dopuszczalna_kon3 = ",30";
  259.     string dopuszczalna_kon4 = ",45";
  260.  
  261.     cin >> godzina;
  262.  
  263.     if((godzina.find(dopuszczalna_kon1) != string ::npos) || (godzina.find(dopuszczalna_kon2) != string ::npos) || (godzina.find(dopuszczalna_kon3) != string ::npos) || (godzina.find(dopuszczalna_kon4) != string ::npos))
  264.     {
  265.         wizyty = wizyty + godzina;
  266.     }
  267.     else
  268.     {
  269.         cout << "nie" << endl;
  270.     }
  271. }
  272.  
  273. HEADER
  274. #ifndef LEKARZ_H
  275. #define LEKARZ_H
  276. #include <iostream>
  277.  
  278. using namespace std;
  279.  
  280. class Lekarz
  281. {
  282.     public:
  283.  
  284.     string imie, nazwisko, specjalizacja, miesiac, dzien, wizyty;
  285.     int godzina_roz, godzina_kon, nr_lekarza;
  286.  
  287.     void wczytaj();
  288.     void wyswietl();
  289.     void wyswietlGodz();
  290.     void zapisNaWizyte();
  291. };
  292.  
  293. #endif // LEKARZ_H
RAW Paste Data
Ledger Nano X - The secure hardware wallet
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top