Introducere în număr prim în C ++

Care este numărul prim? Orice număr care este mai mare de 1 și ar trebui fie împărțit la 1, fie numărul în sine se numește număr prim. Deoarece numerele prime nu pot fi împărțite la niciun alt număr, acesta ar trebui să fie doar același număr sau 1. De exemplu, aici este lista numărului prim în C ++ care pot fi divizibile fie cu 1, fie cu un număr în sine.

Lista unor numere prime

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

S-ar putea să vă gândiți de ce 2 este considerat un număr prim? Ei bine, este o excepție, prin urmare, 2 este singurul număr prim din listă, care este de asemenea egal. Doar două numere sunt numere naturale consecutive, care sunt și prime! De asemenea, 2 este cel mai mic număr prim.

Logica din spatele numărului primar este că, dacă doriți să găsiți numere prime dintr-o listă de numere, trebuie să aplicați logica menționată mai jos:

Dacă numărul dat este divizibil de la sine sau 1, 2 este singurul număr prim care este o excepție, amintiți-vă întotdeauna. Împărțiți numărul dat la 2, dacă primiți un număr întreg, atunci numărul nu poate fi prim!

Cu excepția 2 și 3, toate numerele prime pot fi exprimate sub formă 6n + 1 sau 6n-1, n este un număr natural.

Nu există un singur număr prim care să se încheie cu 5 care să fie mai mare de 5. Deoarece logic orice număr care este mai mare de 5 poate fi împărțit cu ușurință la 5.

Pentru o explicație mai clară care acceptă toată logica menționată mai sus, aici este tabelul tuturor numerelor prime până la 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

Numere prime folosind diverse metode

Acum, să vedem cum puteți găsi numere prime folosind diferite metode, cum ar fi buclă, loop, loop-do-while. Ieșirea va fi aceeași în toate cele trei bucle, deoarece logica este aceeași, doar modul de implementare este diferit.

Vom vedea asta printr-un cod C ++ separat pentru fiecare buclă.

Exemplul # 1

Găsirea unui număr prim utilizând pentru buclă

Cod:

#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;
)

ieşire:

După cum puteți vedea în codul de mai sus, am luat două pentru bucle, deoarece avem nevoie de o listă de numere prime care va fi sub numărul dat în programul nostru. Am inclus pentru buclă în altă buclă pentru buclă pentru a ne facilita calculul. O condiție se adaugă prin instrucțiunea if pentru a rupe bucla odată ce ajungem la numărul dat în cod.

Exemplul # 2

Găsirea unui număr prim folosind pentru buclă cu if-else

Cod:

#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;
)

ieşire:

Exemplul # 3

Găsirea unui număr prim folosind bucla WHILE cu if-else

Cod:

#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;
)

ieşire:

În codul de mai sus, am luat numere întregi ca număr mai mic, număr mai mare, variabilă temporară și un steag. Inițial, luăm două numere, deoarece o intrare este mai mică în timp ce celălalt este mai mare. În cazul în care numărul mai mic este mai mare decât numărul mai mare, aceste numere vor fi schimbate mai întâi printr-o variabilă temporară pentru a trece mai departe în cod. Acum, în timp ce bucla va urmări până când valoarea inferioară este mai mică decât cea mai mare, iar pentru buclă, condiția va continua să calculeze numerele prime între ele.

Concluzie

În, logica numărului prim poate fi utilizată nu numai în C ++, ci în orice limbaj de programare. De la un set mic de numere la o cantitate mare de numere, această logică poate fi utilizată pentru a găsi un set de numere prime în funcție de cerințe în câteva secunde, fără a pierde timp în programarea computerului.

Articole recomandate

Acesta este un ghid pentru numărul prim în C ++. Aici discutăm lista unor numere prime și diverse metode utilizate pentru numere prime. Puteți parcurge și alte articole sugerate pentru a afla mai multe -

  1. Rădăcina pătrată în PHP
  2. Schimbarea în C ++
  3. Dispozitive IoT
  4. Funcția de spălare în C