Programma C ++ per visualizzare i numeri primi tra due intervalli utilizzando le funzioni

Esempio per stampare tutti i numeri primi tra due numeri (inseriti dall'utente) creando una funzione definita dall'utente.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione C ++:

  • C ++ per Loop
  • Istruzione break and continue in C ++
  • Funzioni C ++
  • Tipi di funzioni definite dall'utente in C ++

Esempio: numeri primi tra due intervalli

 #include using namespace std; int checkPrimeNumber(int); int main() ( int n1, n2; bool flag; cout <> n1>> n2; // swapping n1 and n2 if n1 is greater than n2 if (n1> n2) ( n2 = n1 + n2; n1 = n2 - n1; n2 = n2 - n1; ) cout << "Prime numbers between " << n1 << " and " << n2 << " are: "; for(int i = n1+1; i < n2; ++i) ( // If i is a prime number, flag will be equal to 1 flag = checkPrimeNumber(i); if(flag) cout << i << " "; ) return 0; ) // user-defined function to check prime number int checkPrimeNumber(int n) ( bool isPrime = true; // 0 and 1 are not prime numbers if (n == 0 || n == 1) ( isPrime = false; ) else ( for(int j = 2; j <= n/2; ++j) ( if (n%j == 0) ( isPrime = false; break; ) ) ) return isPrime; ) 

Produzione

 Immettere due numeri interi positivi: 12 55 I numeri primi compresi tra 12 e 55 sono: 13 17 19 23 29 31 37 41 43 47 53 

Per stampare tutti i numeri primi tra due interi, checkPrimeNumber()viene creata la funzione. Questa funzione controlla se un numero è primo o meno.

Tutti i numeri interi compresi tra n1 e n2 vengono passati a questa funzione.

Se un numero passato a checkPrimeNumber()è un numero primo, questa funzione restituisce true, altrimenti la funzione restituisce false.

Se l'utente immette prima il numero più grande, questo programma scambierà i numeri. Senza lo scambio, questo programma non funzionerà.

Articoli interessanti...