Úvod do prvočísla v C ++

Jaké je hlavní číslo? Jakékoli číslo, které je větší než 1 a mělo by být vyděleno 1 nebo samotné číslo, se nazývá prvočíslo. Protože prvočísla nelze dělit žádným jiným číslem, mělo by to být pouze stejné číslo nebo 1. Například zde je seznam prvočísel v C ++, které jsou dělitelné buď 1 nebo samotným číslem.

Seznam některých čísel Prime

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

Možná si myslíte, proč je 2 považováno za prvočíslo? Je to výjimka, proto 2 je jediné prvočíslo v seznamu, které je také sudé. Pouze dvě čísla jsou po sobě jdoucí přirozená čísla, která jsou také prvořadá! Také 2 je nejmenší prvočíslo.

Logika za prvočíslem je, že pokud chcete najít prvočísla ze seznamu čísel, musíte použít níže uvedenou logiku:

Pokud je dané číslo dělitelné samo o sobě nebo 1, 2 je jediné sudé prvočíslo, což je výjimka, tak si vždy pamatujte. Vydělte dané číslo 2, pokud dostanete celé číslo, pak číslo nemůže být prvočíslo!

Kromě 2 a 3 mohou být všechna prvočísla vyjádřena ve formě 6n + 1 nebo 6n-1, n je přirozené číslo.

Neexistuje jediné prvočíslo, které končí číslem 5, které je větší než 5. Protože logicky může být jakékoli číslo, které je větší než 5, snadno dělitelné číslem 5.

Pro jasnější vysvětlení, které podporuje všechny výše uvedené logiky, je zde tabulka všech prvočísel do 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

Počáteční čísla pomocí různých metod

Nyní se podívejme, jak najít prvočísla pomocí různých metod, jako jsou smyčky, smyčky, smyčky do-while. Výstup bude stejný ve všech třech případech smyčky, protože logika je stejná, jediný způsob implementace je odlišný.

Uvidíme to prostřednictvím kódu C ++ zvlášť pro každou smyčku.

Příklad č. 1

Hledání prvočísla pomocí smyčky

Kód:

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

Výstup:

Jak můžete vidět ve výše uvedeném kódu, vzali jsme dvě smyčky, protože potřebujeme seznam prvočísel, která budou pod daným číslem v našem programu. Abychom usnadnili náš výpočet, zahrnuli jsme smyčku do jiné smyčky. Podmínka je přidána skrz if příkaz k přerušení smyčky, jakmile dosáhneme našeho daného čísla v kódu.

Příklad č. 2

Hledání prvočísla pomocí smyčky s if-else

Kód:

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

Výstup:

Příklad č. 3

Nalezení prvočísla pomocí WHILE smyčky s if-else

Kód:

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

Výstup:

Ve výše uvedeném kódu jsme vzali celá čísla jako nižší číslo, vyšší číslo, dočasnou proměnnou a příznak. Zpočátku bereme dvě čísla, protože vstupní je nižší, zatímco druhé je vyšší. V případě, že nižší číslo je větší než vyšší číslo, budou tato čísla nejprve zaměněna dočasnou proměnnou, aby se posunula dále v kódu. Nyní, zatímco smyčka bude sledovat, dokud nebude nižší než vyšší a pro smyčku, podmínka bude nadále počítat prvočísla mezi nimi.

Závěr

Logiku prvočísel lze použít nejen v C ++, ale v libovolném programovacím jazyce. Od malé sady čísel po velké množství čísel lze tuto logiku použít k nalezení sady prvočísel podle požadavků během několika sekund, aniž by došlo ke ztrátě času při programování v počítači.

Doporučené články

Toto je průvodce číslem Prime v C ++. Zde diskutujeme seznam některých prvočísel a různých metod používaných v prvočíslech. Další informace naleznete také v dalších navrhovaných článcích -

  1. Square Root v PHP
  2. Zaměňování v C ++
  3. Zařízení internetu věcí
  4. Hashing funkce v C

Kategorie: