In questo articolo imparerai a verificare se un numero è primo o meno. Questo viene fatto utilizzando un ciclo for e un ciclo while in Java.
Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:
- Java while e do … while Loop
- Java per Loop
Un numero primo è un numero divisibile solo per due numeri: 1 e se stesso. Quindi, se un numero qualsiasi è divisibile per qualsiasi altro numero, non è un numero primo.
Esempio 1: programma per controllare il numero primo utilizzando un ciclo for
public class Main ( public static void main(String() args) ( int num = 29; boolean flag = false; for (int i = 2; i <= num / 2; ++i) ( // condition for nonprime number if (num % i == 0) ( flag = true; break; ) ) if (!flag) System.out.println(num + " is a prime number."); else System.out.println(num + " is not a prime number."); ) )
Produzione
29 è un numero primo.
Nel programma precedente, il ciclo for viene utilizzato per determinare se il numero dato num è primo o meno.
Tieni presente che stiamo eseguendo un ciclo da 2 a num / 2. È perché un numero non è divisibile per più della sua metà.
All'interno del for
ciclo, controlliamo se il numero è divisibile per qualsiasi numero nell'intervallo dato (2… num/2)
.
- Se num è divisibile, flag è impostato su
true
e interrompiamo il ciclo. Ciò determina che num non è un numero primo. - Se num non è divisibile per alcun numero, flag è falso e num è un numero primo.
Esempio 2: programma per controllare il numero primo utilizzando un ciclo while
public class Main ( public static void main(String() args) ( int num = 33, i = 2; boolean flag = false; while (i <= num / 2) ( // condition for nonprime number if (num % i == 0) ( flag = true; break; ) ++i; ) if (!flag) System.out.println(num + " is a prime number."); else System.out.println(num + " is not a prime number."); ) )
Produzione
33 non è un numero primo.
Nel programma sopra, viene utilizzato il ciclo while invece di un ciclo for. Il ciclo continua fino a i <= num/2
. Ad ogni iterazione, viene verificato se num è divisibile per i e il valore di i viene incrementato di 1.
Visita questa pagina per scoprire come visualizzare tutti i numeri primi tra due intervalli.