Advertisement
RobertDeMilo

Вводный курс: основы C++ 2. Условия и циклы. Урок 3 Логические операции "и", "или", "не".

Sep 9th, 2023 (edited)
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.11 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.     string color1, color2, color3, color;
  7.     int floor1, floor2, floor3, floor;
  8.  
  9.     cin >> color1 >> floor1;
  10.     cin >> color2 >> floor2;
  11.     cin >> color3 >> floor3;
  12.  
  13.     cin >> color >> floor;
  14.  
  15.     bool ignore_color = color == "?"s;    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  16.     bool ignore_floor = floor == -1;      !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  17.  
  18.     if ((ignore_color || color == color1) && (ignore_floor || floor == floor1)) {
  19.         cout << 1 << endl;
  20.     }
  21.     if ((ignore_color || color == color2) && (ignore_floor || floor == floor2)) {
  22.         cout << 2 << endl;
  23.     }
  24.     if ((ignore_color || color == color3) && (ignore_floor || floor == floor3)) {
  25.         cout << 3 << endl;
  26.     }
  27. }
  28. ********************************************************************************************************************
  29. #include <iostream>
  30. #include <vector>
  31. #include <fstream>
  32.  
  33. using namespace std;
  34.  
  35. class House
  36. {
  37. public:
  38.     static int number_of_house_;
  39.  
  40.     House(string color, int floor) : color_(color), floor_(floor)
  41.     {
  42.         ++number_of_house_;
  43.         id_ = number_of_house_;
  44.     }
  45.  
  46.     string color_;
  47.     int floor_ = 0;
  48.     int id_ = 0;
  49. };
  50.  
  51. int House::number_of_house_ = 0;
  52.  
  53. int main() {
  54.     // Считайте информацию о трёх домах, которые видит перед собой Марта,
  55.     // а также показания очевидца.
  56.     // Выведите номера тех домов (1, 2, 3) которые нужно посетить,
  57.     // по одному номеру в каждой строке
  58.  
  59.     /*string path = "C:/Users/musta/Downloads/texto.txt.txt";
  60.     ifstream fin(path);*/
  61.  
  62.     string color1, color2, color3, house_color;
  63.  
  64.     int floor1, floor2, floor3, house_floor;
  65.  
  66.     cin >> color1 >> floor1 >> color2 >> floor2 >> color3 >> floor3
  67.         >> house_color >> house_floor;
  68.  
  69.     House house1(color1, floor1);
  70.     //cout << house1.number_of_house_;
  71.     House house2(color2, floor2);
  72.     //cout << house2.number_of_house_;
  73.     House house3(color3, floor3);
  74.     //cout << house3.number_of_house_;
  75.  
  76.     vector <House> v = { house1, house2, house3 };
  77.  
  78.     for (auto el : v)
  79.     {
  80.         if (house_color == el.color_ && house_floor == el.floor_)
  81.         {
  82.             cout << el.id_ << endl;
  83.         }
  84.         else if (house_color == el.color_ && house_floor == -1)
  85.         {
  86.             cout << el.id_ << endl;
  87.         }
  88.         else if (house_floor == el.floor_ && house_color == "?")
  89.         {
  90.             cout << el.id_ << endl;
  91.         }
  92.         else if (house_floor == -1 && house_color == "?")
  93.         {
  94.             cout << el.id_ << endl;
  95.         }
  96.     }
  97.  
  98.     return 0;
  99. }
  100. ********************************************************************************************************************
  101. #include <iostream>
  102. #include <vector>
  103. #include <fstream>
  104.  
  105. using namespace std;
  106.  
  107. class House
  108. {
  109. public:
  110.     static int number_of_house_;
  111.  
  112.     House(string color, int floor) : color_(color), floor_(floor)
  113.     {
  114.         ++number_of_house_;
  115.         id_ = number_of_house_;
  116.     }
  117.  
  118.     string color_;
  119.     int floor_ = 0;
  120.     int id_ = 0;
  121. };
  122.  
  123. int House::number_of_house_ = 0;
  124.  
  125. int main() {
  126.     // Считайте информацию о трёх домах, которые видит перед собой Марта,
  127.     // а также показания очевидца.
  128.     // Выведите номера тех домов (1, 2, 3) которые нужно посетить,
  129.     // по одному номеру в каждой строке
  130.  
  131.     /*string path = "C:/Users/musta/Downloads/texto.txt.txt";
  132.     ifstream fin(path);*/
  133.  
  134.     string color1, color2, color3, house_color;
  135.  
  136.     int floor1, floor2, floor3, house_floor;
  137.  
  138.     cin >> color1 >> floor1 >> color2 >> floor2 >> color3 >> floor3
  139.         >> house_color >> house_floor;
  140.  
  141.     House house1(color1, floor1);
  142.     House house2(color2, floor2);
  143.     House house3(color3, floor3);
  144.    
  145.     vector <House> v = { house1, house2, house3 };
  146.  
  147.     for (auto el : v)
  148.     {
  149.         if ((house_color == "?" || house_color == el.color_) && (house_floor == -1 || house_floor == el.floor_))
  150.         {
  151.             cout << el.id_ << endl;
  152.         }
  153.     }
  154.  
  155.     return 0;
  156. }
  157. ********************************************************************************************************************
  158. old
  159.  
  160. #include <iostream>
  161.  
  162. using namespace std;
  163.  
  164. int main() {
  165.  
  166.     string color1, color2, color3, color;
  167.     int floor1, floor2, floor3, floor;
  168.  
  169.     cin >> color1 >> floor1 >> color2 >> floor2 >> color3 >> floor3 >> color >> floor;
  170.  
  171.     if (color == color1 && floor == floor1)
  172.     {
  173.         cout << 1 << endl;
  174.     }
  175.     if (color == color2 && floor == floor2)
  176.     {
  177.         cout << 2 << endl;
  178.     }
  179.     if (color == color3 && floor == floor3)
  180.     {
  181.         cout << 3 << endl;
  182.     }
  183.     else if (color == "?" && floor == -1)
  184.     {
  185.         cout << 1 << endl;
  186.         cout << 2 << endl;
  187.         cout << 3 << endl;
  188.     }
  189.     else if (color == "?")
  190.     {
  191.         if (floor == floor1)
  192.         {
  193.             cout << 1 << endl;
  194.         }
  195.         if (floor == floor2)
  196.         {
  197.             cout << 2 << endl;
  198.         }
  199.         if (floor == floor3)
  200.         {
  201.             cout << 3 << endl;
  202.         }
  203.     }
  204.     else if (floor == -1)
  205.     {
  206.         if (color == color1)
  207.         {
  208.             cout << 1 << endl;
  209.         }
  210.         if (color == color2)
  211.         {
  212.             cout << 2 << endl;
  213.         }
  214.         if (color == color3)
  215.         {
  216.             cout << 3 << endl;
  217.         }
  218.     }
  219. }
  220.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement