In questo articolo imparerai a verificare se un numero è primo o meno. Questo viene fatto usando un ciclo for-in in Kotlin.
Esempio 1: programma per controllare il numero primo utilizzando un ciclo for-in
fun main(args: Array) ( val num = 29 var flag = false for (i in 2… num / 2) ( // condition for nonprime number if (num % i == 0) ( flag = true break ) ) if (!flag) println("$num is a prime number.") else println("$num is not a prime number.") )
Quando esegui il programma, l'output sarà:
29 è un numero primo.
Come Java, nel programma precedente, il ciclo for viene utilizzato per determinare se il numero dato num è primo o meno. Dobbiamo solo passare da 2 a metà di num, perché nessun numero è divisibile per più della sua metà.
All'interno del ciclo for, controlliamo se il numero è divisibile per qualsiasi numero nell'intervallo dato (2… num/2)
. Se lo è, flag è impostato su true
e si esce dal ciclo. Ciò determina che num non è un numero primo.
Se num non è divisibile per alcun numero, flag è falso e num è un numero primo.
Ecco il codice Java equivalente: Java Program to Check Prime Number
Esempio 2: programma per controllare il numero primo utilizzando un ciclo while
fun main(args: Array) ( val num = 33 var i = 2 var flag = false while (i <= num / 2) ( // condition for nonprime number if (num % i == 0) ( flag = true break ) ++i ) if (!flag) println("$num is a prime number.") else println("$num is not a prime number.") )
Quando esegui il programma, l'output sarà:
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.