Advertisement
Guest User

Untitled

a guest
Jan 17th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.45 KB | None | 0 0
  1. #include <iostream>
  2. #include<cstring>
  3. using namespace std;
  4. struct T_dane
  5. {
  6.     char imie[40];
  7.     char nazwisko[40];
  8.     char adres[40];
  9.     char email[40];
  10.     char telefon[40];
  11.     char miasto[40];
  12.     char wiek[40];
  13. };
  14. bool czy_litery(char *litery)
  15. {
  16.     for (int i=0;i<strlen(litery);i++)
  17.     {
  18.         if (litery[i]>='a' && litery[i]<='z' || litery[i]>='A' && litery[i]<='Z')
  19.         {
  20.             continue;
  21.         }
  22.         else
  23.         {
  24.             return false;
  25.         }
  26.     }
  27.     return true;
  28. }
  29. bool czy_liczby(char* do_sprawdzenia)
  30. {
  31.  
  32.    for (int i=0;i<strlen(do_sprawdzenia);i++)
  33.    {
  34.        if(do_sprawdzenia[i]<='9'&& do_sprawdzenia[i]>='0')
  35.        {
  36.           continue;
  37.        }
  38.        else
  39.         {
  40.             return false;
  41.         }
  42.    }
  43.    return true;
  44. }
  45. bool czy_znak_mail(char* mail)
  46. {
  47.     for (int i=0; i<strlen(mail); i++)
  48.     {
  49.         if (mail[i]=='@')
  50.         {
  51.             return true;
  52.         }
  53.     }
  54.     return false;
  55. }
  56. void wczytaj_danePacjenta(char*dane, T_dane pacjenci[])
  57. {
  58.     for (int i=0;i<3;i++)
  59.     {
  60.         cout<<"Nowy pacjent:"<<endl;
  61.         dane=new char[40];
  62.          cout<<"Imie: ";
  63.         cin.getline(dane,40);
  64.         while (czy_litery(dane)==false)
  65.         {
  66.             cout<<"Podano nieprawidlowe znaki, wpisz ponownie: ";
  67.             dane=new char[40];
  68.             cin.getline(dane,40);
  69.         }
  70.         pacjenci[i].imie=dane;
  71.  
  72.         dane=new char[40];
  73.         cout<<"Nazwisko: ";
  74.         cin.getline(dane,40);
  75.         while (czy_litery(dane)==false)
  76.         {
  77.             cout<<"Podano nieprawidlowe znaki, wpisz ponownie: ";
  78.             dane=new char[40];
  79.             cin.getline(dane,40);
  80.         }
  81.         pacjenci[i].nazwisko=dane;
  82.  
  83.         dane=new char[40];
  84.         cout<<"Ulica, nr domu: ";
  85.         cin.getline(dane,40);
  86.         pacjenci[i].adres=dane;
  87.  
  88.         dane=new char[40];
  89.         cout<<"Miasto: ";
  90.         cin.getline(dane,40);
  91.         while (czy_litery(dane)==false)
  92.         {
  93.             cout<<"Podano nieprawidlowe znaki, wpisz ponownie: ";
  94.             dane=new char[40];
  95.             cin.getline(dane,40);
  96.         }
  97.         pacjenci[i].miasto=dane;
  98.  
  99.  
  100.         cout<<"Wiek: ";
  101.         dane=new char[40];
  102.         cin.getline(dane,40);
  103.  
  104.         while (czy_liczby(dane)==false)
  105.         {
  106.             cout<<"Podano bledny wiek, wpisz ponownie: ";
  107.             dane=new char[40];
  108.             cin.getline(dane,40);
  109.         }
  110.         pacjenci[i].wiek=dane;
  111.         dane=new char[40];
  112.         cout<<"Telefon: ";
  113.         cin.getline(dane,40);
  114.         while (czy_liczby(dane)==false)
  115.         {
  116.             cout<<"Podano bledny nr telefonu, wpisz ponownie: ";
  117.             dane=new char[40];
  118.             cin.getline(dane,40);
  119.         }
  120.         pacjenci[i].telefon=dane;
  121.         dane=new char[40];
  122.         cout<<"Email: ";
  123.         cin.getline(dane,40);
  124.         while (czy_znak_mail(dane)==false)
  125.         {
  126.             cout<<"Podano bledny adres e-mail, wpisz ponownie: ";
  127.             dane=new char[40];
  128.             cin.getline(dane,40);
  129.         }
  130.         pacjenci[i].email=dane;
  131.     }
  132. }
  133. void wypisz_danePacjenta(T_dane pacjenci[])
  134. {
  135.     for (int i=0;i<3;i++)
  136.     {
  137.         cout<<"Imie: "<<pacjenci[i].imie<<"\nNazwisko: "<<pacjenci[i].nazwisko<<"\nAdres: "<<pacjenci[i].adres<<"\nMiasto: "<<pacjenci[i].miasto<<"\nWiek: "<<pacjenci[i].wiek<<"\nTelefon: "<<pacjenci[i].telefon<<"\nE-mail: "<<pacjenci[i].email<<"\n\n";
  138.     }
  139. }
  140. void znajdz_danePacjenta(T_dane pacjenci[])
  141. {
  142.     char m[40],n[2],w[3];
  143.     cout<<"Miasto pacjenta: \n";
  144.     cin>>m;
  145.     cout<<"Pierwsza litera nazwiska: \n";
  146.     cin>>n;
  147.     cout<<"Wiek pacjenta: \n";
  148.     cin>>w;
  149.     cout<<"\n\n######## Wyniki wyszukiwania ########"<<endl;
  150.     for (int i=0;i<3;i++)
  151.     {
  152.         if(strcmp(m,pacjenci[i].miasto)==0 && strcmp(w,pacjenci[i].wiek)==0 && strncmp(pacjenci[i].nazwisko,n,1)==0)
  153.         {
  154.             cout<<"Imie: "<<pacjenci[i].imie<<"\nNazwisko: "<<pacjenci[i].nazwisko<<"\nAdres: "<<pacjenci[i].adres<<"\nMiasto: "<<pacjenci[i].miasto<<"\nWiek: "<<pacjenci[i].wiek<<"\nTelefon: "<<pacjenci[i].telefon<<"\nE-mail: "<<pacjenci[i].email<<"\n\n";
  155.         }
  156.  
  157.     }
  158. }
  159.  
  160. int main()
  161. {
  162.     dane pacjenci[3];
  163.  
  164.     wczytaj_danePacjenta(dane,pacjenci);
  165.     cout<<"\n\n";
  166.     cout<<"Lista pacjentow"<<endl;
  167.     wypisz_danePacjenta(pacjenci);
  168.     cout<<"\n\n";
  169.     cout<<"Wyszukiwanie pacjenta"<<endl;
  170.     znajdz_danePacjenta(pacjenci);
  171.  
  172.  
  173.     delete dane;
  174.  
  175. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement