Concetti Chiave
- Il programma stampa i primi N numeri primi in sequenza, separati da spazi, iniziando da 2.
- L'utente inserisce il numero N per specificare quanti numeri primi desidera trovare.
- Il programma verifica ogni numero a partire da 2 per stabilire se è primo, controllando la divisibilità fino alla sua radice quadrata.
- Il ciclo di ricerca continua fino a quando non vengono trovati e stampati N numeri primi.
- Il codice include un ciclo while che incrementa il contatore dei numeri primi trovati finché non raggiunge il valore N.
Indice
Cosa fa
Stampa i primi N numeri primi, uno per uno, separati da uno spazio. Se N è 5, ad esempio, il programma stamperà 2, 3, 5, 7, 11.
Come funziona
Input dell'utente
Il programma chiede all'utente quanti numeri primi vuole trovare (N).
Ricerca dei numeri primi
Il programma inizia dal numero 2 e verifica ogni numero successivo per determinare se è primo.
Per ogni numero num, si verifica se è divisibile per qualsiasi altro numero compreso tra 2 e la radice quadrata di num.
Se il numero è primo, viene stampato e il contatore count viene incrementato.
Condizione di uscita
Il ciclo continua finché non vengono trovati N numeri primi.
Il codice
#include <iostream>
using namespace std;int main() {
int N; // Numero di numeri primi da trovare
cout << "Inserisci il numero di numeri primi da trovare: ";
cin >> N;int count = 0; // Conta i numeri primi trovati
int num = 2; // Primo numero da verificare (2 è il primo numero primo)// Ciclo per trovare i primi N numeri primi
while (count < N) {
bool isPrime = true; // Assume che il numero sia primo// Verifica se 'num' è primo
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
isPrime = false; // Se è divisibile per qualsiasi numero, non è primo
break;
}
}// Se il numero è primo, lo stampiamo
if (isPrime) {
cout << num << " ";
count++; // Incrementa il contatore dei numeri primi trovati
}num++; // Passa al prossimo numero
}cout << endl;
return 0;
}