Wprowadzenie do Prime Number w C ++
Jaka jest liczba pierwsza? Każda liczba, która jest większa niż 1 i powinna być podzielona przez 1 lub sama liczba nazywana jest liczbą pierwszą. Ponieważ liczb pierwszych nie można podzielić przez żadną inną liczbę, powinna to być tylko ta sama liczba lub 1. Na przykład tutaj jest lista liczb pierwszych w C ++, które można podzielić przez 1 lub samą liczbę.
Lista niektórych liczb pierwszych
2 3 5 7 11 13 17 19 23 29 31 37 41…
Być może zastanawiasz się, dlaczego 2 uważa się za liczbę pierwszą? Jest to wyjątek, dlatego 2 jest jedyną liczbą pierwszą na liście, która jest również parzysta. Tylko dwie liczby są kolejnymi liczbami naturalnymi, które również są liczbą pierwszą! Ponadto 2 jest najmniejszą liczbą pierwszą.
Logika stojąca za liczbą pierwszą jest taka, że jeśli chcesz znaleźć liczby pierwsze z listy liczb, musisz zastosować następujące logiki:
Jeśli podana liczba jest podzielna sama w sobie lub 1, 2 jest jedyną parzystą liczbą pierwszą, która jest wyjątkiem, więc zawsze pamiętaj. Podziel podaną liczbę przez 2, jeśli otrzymasz liczbę całkowitą, liczba nie może być liczbą pierwszą!
Z wyjątkiem 2 i 3 wszystkie liczby pierwsze można wyrazić w postaci 6n + 1 lub 6n-1, n jest liczbą naturalną.
Nie ma jednej liczby pierwszej, która kończy się na 5, która jest większa niż 5. Ponieważ logicznie, każdą liczbę większą niż 5 można łatwo podzielić przez 5.
Bardziej przejrzystym wyjaśnieniem, które obsługuje całą powyższą logikę, jest tabela wszystkich liczb pierwszych 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 |
Liczby pierwsze za pomocą różnych metod
Zobaczmy teraz, jak znaleźć liczby pierwsze przy użyciu różnych metod, takich jak pętla for, pętla while, pętla do-while. Dane wyjściowe będą takie same we wszystkich trzech przypadkach pętli, ponieważ logika jest taka sama, jedyny sposób implementacji jest inny.
Zobaczymy to poprzez kod C ++ osobno dla każdej pętli.
Przykład 1
Znajdowanie liczby pierwszej za pomocą pętli for
Kod:
#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;
)
Wynik:
Jak widać w powyższym kodzie, wzięliśmy dwa dla pętli, ponieważ potrzebujemy listy liczb pierwszych, które będą poniżej podanej liczby w naszym programie. Uwzględniliśmy pętlę w innej pętli, aby ułatwić nasze obliczenia. Warunek jest dodawany poprzez instrukcję if, aby przerwać pętlę, gdy osiągniemy podaną liczbę w kodzie.
Przykład nr 2
Znajdowanie liczby pierwszej za pomocą pętli for z if-else
Kod:
#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;
)
Wynik:
Przykład nr 3
Znajdowanie liczby pierwszej za pomocą pętli WHILE z if-else
Kod:
#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;
)
Wynik:
W powyższym kodzie przyjęliśmy liczby całkowite jako niższą liczbę, wyższą liczbę, zmienną tymczasową i flagę. Początkowo bierzemy dwie liczby, ponieważ jedna z nich jest niższa, a druga wyższa. W przypadku, gdy niższa liczba jest większa niż wyższa liczba, liczby te zostaną najpierw zamienione przez zmienną tymczasową, aby przejść dalej w kodzie. Teraz, gdy pętla będzie śledzić, aż dolna będzie mniejsza niż wyższa, a dla pętli warunek będzie nadal obliczał liczby pierwsze między nimi.
Wniosek
W logice liczb pierwszych można używać nie tylko w C ++, ale w dowolnym języku programowania. Od małego zestawu liczb do dużej liczby liczb logika ta może być wykorzystana do znalezienia zestawu liczb pierwszych zgodnie z wymaganiami w ciągu kilku sekund bez marnowania czasu na programowanie komputerowe.
Polecane artykuły
To jest przewodnik po Prime Number w C ++. Tutaj omawiamy listę niektórych liczb pierwszych i Różne metody stosowane w liczbach pierwszych. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -
- Pierwiastek kwadratowy w PHP
- Zamiana w C ++
- Urządzenia IoT
- Funkcja mieszania w C.