Простое число в C ++ - Найти простые числа, используя различные методы

Содержание:

Anonim

Введение в простое число в C ++

Что такое простое число? Любое число, которое больше 1, и оно должно быть либо разделено на 1, либо само число называется простым числом. Поскольку простые числа не могут быть разделены на любое другое число, это должно быть только то же число или 1. Например, здесь приведен список простых чисел в C ++, которые делятся либо на 1, либо на само число.

Список некоторых простых чисел

2 3 5 7 11 13 17 19 23 29 31 37 41…

Вы можете подумать, почему 2 считается простым числом? Ну, это исключение, поэтому 2 - это единственное простое число в списке, которое также является четным. Только два числа являются последовательными натуральными числами, которые тоже простые! Кроме того, 2 является наименьшим простым числом.

Логика, лежащая в основе простых чисел, заключается в том, что если вы хотите найти простые числа из списка чисел, вы должны применить указанную ниже логику:

Если данное число делится само на себя или 1, 2 является единственным четным простым числом, которое является исключением, поэтому всегда помните. Разделите данное число на 2, если вы получите целое число, то число не может быть простым!

За исключением 2 и 3, все простые числа могут быть выражены в форме 6n + 1 или 6n-1, n - натуральное число.

Нет ни одного простого числа, которое заканчивается на 5, которое больше 5. Потому что логически любое число, которое больше 5, может быть легко разделено на 5.

Для более ясного объяснения, которое поддерживает всю приведенную выше логику, приведем таблицу всех простых чисел до 401:

2 3 5 7 11 13 17 19 23
29 31 37 41 43 47 53 59 61 67
71 73 79 83 89 97 101 103 107 109
113 127 131 137 139 149 151 157 163 167
173 179 181 191 193 197 199 211 223 227
229 233 239 241 251 257 263 269 271 277
281 283 293 307 311 313 317 331 337 347
349 353 359 367 373 379 383 389 397 401

Простые числа с использованием различных методов

Теперь давайте посмотрим, как найти простые числа, используя различные методы, такие как цикл for, цикл loop, цикл do-while. Выходные данные будут одинаковыми во всех трех случаях цикла, потому что логика одинакова, только способ реализации отличается.

Мы увидим это через код C ++ отдельно для каждого цикла.

Пример № 1

Нахождение простого числа, используя для цикла

Код:

#include
#include
using namespace std;
int main() (
int x; // Declaring a variable x
cout << "Please enter the number : "; // cout to get the input value from user
cin >> x;
cout << "Here is the list of all the prime numbers Below "<< x << endl;
for ( int m=2; m for ( int n=2; n*n<=m; n++)
(
if ( m % n == 0)
break;
else if ( n+1 > sqrt (m)) (
cout << m << endl;
)
)
return 0;
)
#include
#include
using namespace std;
int main() (
int x; // Declaring a variable x
cout << "Please enter the number : "; // cout to get the input value from user
cin >> x;
cout << "Here is the list of all the prime numbers Below "<< x << endl;
for ( int m=2; m for ( int n=2; n*n<=m; n++)
(
if ( m % n == 0)
break;
else if ( n+1 > sqrt (m)) (
cout << m << endl;
)
)
return 0;
)

Выход:

Как вы можете видеть из приведенного выше кода, мы взяли два цикла for, потому что нам нужен список простых чисел, который будет ниже заданного числа в нашей программе. Мы включили цикл for в другой цикл for, чтобы облегчить наши вычисления. Условие добавляется через оператор if, чтобы разорвать цикл, как только мы достигнем заданного числа в коде.

Пример № 2

Нахождение простого числа с помощью цикла for с if-else

Код:

#include
using namespace std;
int main ()
(
int number, x, count = 0;
cout << "Please enter the number to check if it's prime or not : " << endl;
cin >> number;
if ( number == 0)
(
cout << "\n" << number << " This number is not prime";
exit(1);
)
else (
for ( x=2; x < number; x++)
if ( number % x == 0)
count++;
)
if ( count > 1)
cout << "\n" << number << " This number is not prime.";
else
cout << "\n" << number << " This is prime number.";
return 0;
)

Выход:

Пример № 3

Нахождение простого числа с помощью цикла WHILE с помощью if-else

Код:

#include
using namespace std;
int main()
(
int lower, higher, flag, temporary;
cout << "Please enter the two numbers for finding prime numbers between them: "<< endl;
cin >> lower >> higher;
if ( lower > higher) ( //It will swap the numbers if lower number is greater than higher number.
temporary = lower;
lower = higher;
higher = temporary;
)
cout << "Hence the Prime numbers between the number " << lower << " and " << higher << " are: "<< endl;
while ( lower < higher)
(
flag = 0;
for ( int x = 2; x <= lower/2; ++x)
(
if ( lower % x == 0)
(
flag = 1;
break;
)
)
if ( flag == 0)
cout << lower << " ";
++lower;
)
return 0;
)

Выход:

В приведенном выше коде мы взяли целые числа как меньшее число, большее число, временную переменную и флаг. Первоначально мы берем два числа, поскольку входное значение меньше, а другое выше. В случае, если меньшее число больше, чем большее, то эти числа сначала будут обмениваться во временной переменной для дальнейшего перемещения в коде. Теперь, пока цикл будет следовать до тех пор, пока нижний не станет меньше, чем выше, и для цикла, условие будет продолжать вычислять простые числа между ними.

Вывод

В логике простых чисел можно использовать не только C ++, но и любой язык программирования. От небольшого набора чисел до большого количества чисел эту логику можно использовать для нахождения набора простых чисел в соответствии с требованиями в течение нескольких секунд, не тратя время на программирование.

Рекомендуемые статьи

Это руководство по простому числу в C ++. Здесь мы обсуждаем список некоторых простых чисел, а также различные методы, используемые для простых чисел. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Квадратный корень в PHP
  2. Обмен в C ++
  3. IoT устройства
  4. Функция хеширования в C