Stoycho_KK

Задача представяща число като сбор на 2 прости

Jan 27th, 2021 (edited)
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.71 KB | None | 0 0
  1. #include<iostream>
  2.  
  3. bool isPrime(int number) {
  4.     if (number <= 0 || number == 1)
  5.         return false;
  6.  
  7.     int border = number / 2;
  8.  
  9.     for (int i = 2; i < border; i++)
  10.         if (number % i == 0)
  11.             return false;
  12.  
  13.     return true;
  14. }
  15.  
  16. void printNum(int number, int arg, int args) {
  17.     std::cout << "Yes!\n";
  18.     std::cout << number << " = " << arg << " + " << args;
  19. }
  20.  
  21. bool canBeRepresent(int number) {
  22.     if (number < 4)
  23.         return false;
  24.  
  25.     int border = number / 2;
  26.  
  27.     for (int i = 2; i < border; i++)
  28.         if (isPrime(i) && isPrime(number - i)) {
  29.             printNum(number, i, number - i);
  30.             return true;
  31.         }
  32.  
  33.     return false;
  34. }
  35.  
  36. int main() {
  37.     int arg;
  38.     std::cin >> arg;
  39.  
  40.     if (!canBeRepresent(arg))
  41.         std::cout << "No";
  42. }
Add Comment
Please, Sign In to add comment