Introduktion til hovednummer i C ++

Hvad er primtalet? Ethvert tal, der er større end 1, og det skal enten deles med 1, eller selve tallet kaldes et primtal. Da primtal ikke kan divideres med noget andet nummer, skal det kun være det samme tal eller 1. For eksempel er her listen over primnummer i C ++, der kan deles med enten 1 eller nummeret selv.

Liste over nogle præmienumre

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

Du tænker måske, hvorfor 2 betragtes som et primtal? Det er en undtagelse, derfor er 2 det eneste primtal på listen, som også er jævn. Kun to tal er på hinanden følgende naturlige tal, som også er primære! 2 er også det mindste primtal.

Logikken bag primtallet er, at hvis du vil finde primnumre fra en liste over numre, skal du anvende de nævnte logik nedenfor:

Hvis det givne tal kan deles af sig selv eller 1, er 2 det eneste lige primtal, som er en undtagelse, så husk altid. Del det givne tal med 2, hvis du får et helt tal, kan antallet ikke være primært!

Bortset fra 2 og 3 kan alle primtall udtrykkes i 6n + 1 eller 6n-1 form, n er et naturligt tal.

Der er ikke et enkelt primtal, der slutter med 5, som er større end 5. Fordi logisk nok kan ethvert tal, der er større end 5, let deles med 5.

For en mere klar forklaring, der understøtter al den ovenfor givne logik, er tabellen over alle primtall op til 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

Prime numre ved hjælp af forskellige metoder

Lad os nu se, hvordan man finder primtal med forskellige metoder, f.eks. Til loop, mens loop, do-while-loop. Outputet vil være det samme i alle tre loop-sager, fordi logik er den samme, kun implementeringsmåden er anderledes.

Vi ser det gennem en C ++ - kode separat for hver løkke.

Eksempel 1

At finde et primtal ved hjælp af loop

Kode:

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

Produktion:

Som du kan se i ovenstående kode, har vi taget to til loops, fordi vi har brug for en liste over primtal, der vil være under det givne nummer i vores program. Vi har inkluderet for loop inden i en anden for loop for at gøre vores beregning lettere. Der tilføjes en betingelse, hvis udsagn om at bryde løkken, når vi når vores givne nummer i kode.

Eksempel 2

At finde et primtal med brug af til loop med if-else

Kode:

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

Produktion:

Eksempel 3

At finde et primtal ved hjælp af WHILE-loop med hvis-andet

Kode:

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

Produktion:

I ovenstående kode har vi taget heltal som et lavere tal, højere tal, midlertidig variabel og et flag. Til at begynde med tager vi to numre, da et input er lavere, mens det andet er højere. I tilfælde af at det lavere tal er større end det højere tal, udveksles disse numre gennem en midlertidig variabel først for at komme videre i kode. Mens løkken vil følge op, indtil lavere er mindre end højere, og for loop, vil betingelsen fortsat beregne primtal mellem dem.

Konklusion

I kan primtallogik ikke kun bruges i C ++, men i ethvert programmeringssprog. Fra et lille antal numre til et stort antal numre kan denne logik bruges til at finde et sæt primnumre i henhold til krav inden for få sekunder uden at spilde noget tid i computerprogrammering.

Anbefalede artikler

Dette er en guide til Prime Number i C ++. Her diskuterer vi listen over nogle primtall og forskellige metoder, der bruges til primnumre. Du kan også gennemgå vores andre foreslåede artikler for at lære mere–

  1. Firkantet rod i PHP
  2. Udskift C ++
  3. IoT-enheder
  4. Hashing-funktion i C

Kategori: