Advertisement
kirill_76rus

name_sur

Nov 6th, 2020
2,767
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.58 KB | None | 0 0
  1. #include<iostream>
  2. #include<map>
  3. #include<string>
  4. #include<vector>
  5. using namespace std;
  6. class Person {
  7. private:
  8.     map <int, string> surname;
  9.     map<int, string> name;
  10. public:
  11.     void ChangeFirstName(int year, const string& first_name) {
  12.       name[year] = first_name;/*add first name at year*/
  13.     }
  14.     void ChangeLastName(int year, const string& last_name) {
  15.             surname[year] = last_name;
  16.     }
  17.     string GetFullName(const int& year) {
  18.         // получить имя и фамилию по состоянию на конец года
  19.         string finded_name, finded_surname;
  20.         int temp_year = 0U;
  21.         for (auto n : name) {
  22.             if (n.first >= temp_year && n.first <= year) {
  23.             finded_name = n.second;
  24.             }
  25.         }
  26.         temp_year = 0U;
  27.         for (auto s : surname) {
  28.             if (s.first >= temp_year && s.first <= year) {
  29.             finded_surname = s.second;
  30.             }
  31.         }
  32.         if (finded_name != "" && finded_surname != "") {
  33.             return finded_name+" "+finded_surname;
  34.         }
  35.         else if (finded_name != "" && finded_surname == "") {
  36.             return finded_name+ " with unknown last name";
  37.         }
  38.         else if (finded_name == "" && finded_surname != "") {
  39.             return finded_surname+" with unknown first name";
  40.         }
  41.         else {
  42.             return "Incognito";
  43.             }
  44.         }
  45. };
  46. int main(void) {
  47.     Person person;
  48.     person.ChangeLastName(3, "3_2nd");
  49.     person.ChangeLastName(6, "6_2nd");
  50.     person.GetFullName(3);
  51.     return 0;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement