U ovom ćete članku naučiti provjeriti je li broj prost ili nije. To se radi pomoću petlje for i while u Javi.
Da biste razumjeli ovaj primjer, trebali biste imati znanje o sljedećim temama programiranja Java:
- Java while and do … while Loop
- Java za petlju
Prosti broj je broj koji je djeljiv sa samo dva broja: 1 i samim sobom. Dakle, ako je bilo koji broj djeljiv s bilo kojim drugim brojem, to nije prost broj.
Primjer 1: Program za provjeru osnovnog broja pomoću for petlje
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."); ) )
Izlaz
29 je prost broj.
U gornjem programu, for petlja se koristi za određivanje je li zadani broj num prost ili nije.
Ovdje imajte na umu da petlju vršimo od 2 do num / 2. To je zato što broj nije djeljiv s više od njegove polovice.
Unutar for
petlje provjeravamo je li broj djeljiv s bilo kojim brojem u zadanom rasponu (2… num/2)
.
- Ako je num djeljiv, zastava je postavljena na
true
i mi izbijamo iz petlje. To određuje da num nije prost broj. - Ako num nije djeljiv s bilo kojim brojem, zastavica je false, a num je prost broj.
Primjer 2: Program za provjeru osnovnog broja pomoću while petlje
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."); ) )
Izlaz
33 nije prost broj.
U gore navedenom programu, umjesto petlje for koristi se while petlja. Petlja traje do i <= num/2
. Na svakoj se iteraciji provjerava je li num djeljivo s i i vrijednost i povećava se za 1.
Posjetite ovu stranicu da biste saznali kako možete prikazati sve proste brojeve između dva intervala.