Другое

Как проверить является ли число простым в С++

Сегодня мы разберем как происходит проверка на С++: простое ли число? Определить простое число или нет можно, используя разные языки программирования, принципиально важно — это уловить структуру составления алгоритма проверки.

Простое число — это число, которое можно разделить без остатка исключительно само на себя и на «единицу», а при делении на другие числа в ответе будет находиться остаток от деления. Например: 2, 3, 5 — это простые числа, а 4 — не простое потому что:

  • 2, 3, 5 разделяются без остатка исключительно сами на себя и на «единицу»;

  • 4 — разделяется без остатка сама на себя, а также на два и на «единицу», поэтому это не «простое число».

Поверка: простое ли число на C++?

Даже на языке программирования C++ можно проверить является ли число простым несколькими способами.

Вариант первый:

#include <iostream> 

using namespace std; 

 

bool checkPrimeNumber(int); 

 

int main() { 

 int n; 

 cout << "Введите целочисленное положительное значение: "; 

 cin >> n; 

 

 if (checkPrimeNumber(n))  

   cout << n << " это простое число."; 

 else 

   cout << n << " это значение не является простым числом."; 

 return 0; 

}  

 

bool checkPrimeNumber(int n) { 

  bool isPrimeNumber = true; 

 

   // 0 и 1 не являются простыми числами 

 if (n == 0 || n == 1) { 

   isPrimeNumber = false;  

 } 

 else { 

   for (int i = 2; i <= n / 2; ++i) { 

     if (n % i == 0) { 

       isPrimeNumber = false; 

       break; 

     } 

   } 

 } 

 return isPrimeNumber;  

}

 

Ели запустить в работу эту программу, тогда в результате будет следующее:

     Введите целочисленное положительное значение: 23

     23 — это простое число

     

В С++ можно определить простое число или нет другим способом. Например, таким:

#include <iostream>

using namespace std;

 

int main() {

    int i, n;

    bool isPrimeNumber = true;

 

    cout << "Введите целочисленное положительное значение: ";

    cin >> n;

 

    // 0 и 1 не являются простыми числами по умолчанию 

    if (n == 0 || n == 1) {

        isPrimeNumber = false;

    }

    else {

        for (i = 2; i <= n / 2; ++i) {

            if (n % i == 0) {

                isPrimeNumber = false;

                break;

            }

        }

    }

    if (isPrimeNumber)

        cout << n << " это простое число";

    else

        cout << n << " это значение не является простым числом";

 

    return 0;

}

 

Если запустить эту программу в работу, тогда ее результатом будет, как и в предыдущем случае, например, такое:

     Введите целочисленное положительное значение: 29

     29 — это простое число

Заключение

Проверка: простое ли число на С++ делается несложно. Чтобы определить простое число или нет, вы можете воспользоваться одной из описанных выше версий программы проверки на С++, либо придумать собственную.

Схожие статьи

Чаты и Телеграм-каналы для программистов: выбираем лучшие из лучших
Другое

Чаты и Телеграм-каналы для программистов: выбираем лучшие из лучших

Как работает CSRF Token защита: что делать, если CSRF токен истек
Другое

Как работает CSRF Token защита: что делать, если CSRF токен истек

DIY проекты или
Другое

DIY проекты или "сделай сам" на Arduino: самые интересные проекты

Подозрительная активность Google: что делать, если получил это письмо?
Другое

Подозрительная активность Google: что делать, если получил это письмо?

×