In dit artikel leert u controleren of een getal een priemgetal is of niet. Dit wordt gedaan met behulp van een for-lus en while-lus in Java.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:
- Java while en do … while Loop
- Java voor Loop
Een priemgetal is een getal dat deelbaar is door slechts twee getallen: 1 en zichzelf. Dus als een getal deelbaar is door een ander getal, is het geen priemgetal.
Voorbeeld 1: Programmeer om het priemgetal te controleren met een for-lus
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."); ) )
Uitvoer
29 is een priemgetal.
In het bovenstaande programma wordt de for-lus gebruikt om te bepalen of het opgegeven getal num een priemgetal is of niet.
Merk hier op dat we een lus maken van 2 naar num / 2. Het is omdat een getal niet deelbaar is door meer dan de helft.
Binnen de for
lus controleren we of het getal deelbaar is door een willekeurig getal in het opgegeven bereik (2… num/2)
.
- Als num deelbaar is, wordt de vlag ingesteld op
true
en breken we uit de lus. Dit bepaalt dat num geen priemgetal is. - Als num niet door een willekeurig getal kan worden gedeeld, is vlag onwaar en is num een priemgetal.
Voorbeeld 2: Programmeer om het priemgetal te controleren met een while-lus
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."); ) )
Uitvoer
33 is geen priemgetal.
In het bovenstaande programma wordt while-lus gebruikt in plaats van een for-lus. De lus loopt tot i <= num/2
. Bij elke iteratie wordt gecontroleerd of num deelbaar is door i en de waarde van i wordt verhoogd met 1.
Bezoek deze pagina om te zien hoe u alle priemgetallen tussen twee intervallen kunt weergeven.