Advertisement
SoKnight

One43

Sep 14th, 2022
995
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.53 KB | None | 0 0
  1. #include "pt4.h"
  2. using namespace std;
  3.  
  4. void Solve()
  5. {
  6.     Task("One43");
  7.  
  8.     // получаем число
  9.     int number;
  10.     pt >> number;
  11.  
  12.     int index = 0; // индексация цифр в числе [0,3]
  13.     int n1 = 0, n2 = 0, n3 = 0, n4 = 0; // переменные для самих цифр
  14.  
  15.     while (number > 0) {
  16.         int n = number % 10; // получаем крайнюю правую цифру (0-9)
  17.        
  18.         // в зависимости от индекса цифры записываем её в нужную переменную
  19.         // можно было бы залить их в массив, но это путь слабых...
  20.         switch (index) {
  21.             case 0: n1 = n; break;
  22.             case 1: n2 = n; break;
  23.             case 2: n3 = n; break;
  24.             case 3: n4 = n; break;
  25.         }
  26.  
  27.         // конец каждой итерации с цифрой:
  28.         index++; // увеличиваем индекс для следующей итерации
  29.         number /= 10; // убираем правый разряд в исходном числе
  30.     }
  31.  
  32.     // --- проверочка чисел по заданному условию
  33.  
  34.     bool result = false;
  35.  
  36.     if (n1 == n2 * n3 * n4)
  37.         result = true;
  38.     else if (n2 == n1 * n3 * n4)
  39.         result = true;
  40.     else if (n3 == n1 * n2 * n4)
  41.         result = true;
  42.     else if (n4 == n1 * n2 * n3)
  43.         result = true;
  44.  
  45.     // вывод результата (true / false)
  46.     pt << result;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement