Advertisement
JStefan

[Laboratoriski] Dogovor

Mar 5th, 2017
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.03 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3.  
  4. using namespace std;
  5.  
  6. class Potpisuvac {
  7. private:
  8.     char ime[21];
  9.     char prezime[21];
  10.     char EMBG[15];
  11. public:
  12.     Potpisuvac() {}
  13.     Potpisuvac(char* ime, char* prezime, char* EMBG) {
  14.         strncpy(this->ime, ime, 19); this->ime[20] = 0;
  15.         strncpy(this->prezime, prezime, 19); this->prezime[20] = 0;
  16.         strncpy(this->EMBG, EMBG, 13); this->EMBG[14] = 0;
  17.     }
  18.     Potpisuvac(const Potpisuvac& p) {
  19.         strcpy(ime, p.ime);
  20.         strcpy(prezime, p.prezime);
  21.         strcpy(EMBG, p.EMBG);
  22.     }
  23.  
  24.     char* getEmbg() {
  25.         return EMBG;
  26.     }
  27. };
  28. class Dogovor {
  29. private:
  30.     int broj_na_dogovor;
  31.     char kategorija[51];
  32.     Potpisuvac potpisuvaci[3];
  33. public:
  34.     Dogovor(int broj, char* k, Potpisuvac* p) {
  35.         broj_na_dogovor = broj;
  36.         strncpy(kategorija, k, 49); kategorija[50] = 0;
  37.         potpisuvaci[0] = p[0]; potpisuvaci[1] = p[1]; potpisuvaci[2] = p[2];
  38.     }
  39.  
  40.     bool proverka() {
  41.         cout << "Dogovor " << broj_na_dogovor << ":" << endl;
  42.         if(strcmp(potpisuvaci[0].getEmbg(), potpisuvaci[1].getEmbg()) == 0 ||
  43.            strcmp(potpisuvaci[0].getEmbg(), potpisuvaci[2].getEmbg()) == 0 ||
  44.            strcmp(potpisuvaci[1].getEmbg(), potpisuvaci[2].getEmbg()) == 0) return true;
  45.         return false;
  46.     }
  47.  
  48.     ~Dogovor() {}
  49. };
  50.  
  51.  
  52. int main()
  53. {
  54.     char embg[14], ime[20], prezime[20], kategorija[50];
  55.     int broj, n;
  56.     cin >> n;
  57.     for(int i = 0; i < n; i++){
  58.         cin >> embg >> ime >> prezime;
  59.         Potpisuvac p1(ime, prezime, embg);
  60.         cin >> embg >> ime >> prezime;
  61.         Potpisuvac p2(ime, prezime, embg);
  62.         cin >> embg >> ime >> prezime;
  63.         Potpisuvac p3(ime, prezime, embg);
  64.         cin >> broj >> kategorija;
  65.         Potpisuvac p[3];
  66.         p[0] = p1; p[1] = p2; p[2] = p3;
  67.         Dogovor d(broj, kategorija, p);
  68.         if(d.proverka() == true)
  69.             cout << "Postojat potpishuvaci so ist EMBG" << endl;
  70.         else
  71.             cout << "Ne postojat potpishuvaci so ist EMBG" << endl;
  72.     }
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement