Concetti Chiave

  • Il programma stampa i primi N numeri primi, separati da uno spazio, a partire dal numero 2.
  • L'input dell'utente determina quanti numeri primi verranno trovati, tramite la variabile N.
  • Utilizza un ciclo per verificare se ogni numero successivo è primo, controllando la divisibilità fino alla radice quadrata del numero.
  • Il ciclo continua finché non vengono trovati i N numeri primi richiesti dall'utente.
  • Il codice è scritto in C++ e include dichiarazioni per input/output e la logica per trovare numeri primi.

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 lo è, num non è primo.
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;
}

Domande da interrogazione

  1. Come viene determinato se un numero è primo nel programma?
  2. Il programma verifica se un numero è divisibile per qualsiasi altro numero compreso tra 2 e la radice quadrata del numero stesso. Se è divisibile, il numero non è considerato primo.

  3. Qual è il ruolo della variabile "count" nel codice?
  4. La variabile "count" tiene traccia del numero di numeri primi trovati e viene incrementata ogni volta che un numero primo viene stampato, fino a raggiungere il valore N richiesto dall'utente.

  5. Qual è il primo numero che il programma inizia a verificare?
  6. Il programma inizia a verificare dal numero 2, che è il primo numero primo.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community