Program Java do sprawdzania, czy liczba jest pierwsza, czy nie

W tym artykule nauczysz się sprawdzać, czy liczba jest liczbą pierwszą, czy nie. Odbywa się to za pomocą pętli for i while w Javie.

Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:

  • Java while i zrób… while Loop
  • Java for Loop

Liczba pierwsza to liczba podzielna tylko przez dwie liczby: 1 i siebie. Tak więc, jeśli dowolna liczba jest podzielna przez dowolną inną liczbę, nie jest to liczba pierwsza.

Przykład 1: Program do sprawdzania liczby pierwszej za pomocą pętli 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."); ) )

Wynik

 29 to liczba pierwsza.

W powyższym programie pętla for służy do określenia, czy podana liczba num jest liczbą pierwszą, czy nie.

Tutaj zwróć uwagę, że przechodzimy od 2 do num / 2. Dzieje się tak, ponieważ liczba nie jest podzielna przez więcej niż jej połowę.

Wewnątrz forpętli sprawdzamy, czy liczba jest podzielna przez dowolną liczbę z podanego zakresu (2… num/2).

  • Jeśli liczba jest podzielna, ustawiana jest flaga na truei wychodzimy z pętli. Oznacza to, że num nie jest liczbą pierwszą.
  • Jeśli liczba nie jest podzielna przez żadną liczbę, flaga ma wartość fałsz, a liczba jest liczbą pierwszą.

Przykład 2: Program do sprawdzania liczby pierwszej za pomocą pętli 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."); ) )

Wynik

 33 nie jest liczbą pierwszą.

W powyższym programie pętla while jest używana zamiast pętli for. Pętla działa do i <= num/2. W każdej iteracji sprawdzane jest, czy liczba jest podzielna przez i, a wartość i jest zwiększana o 1.

Odwiedź tę stronę, aby dowiedzieć się, jak wyświetlić wszystkie liczby pierwsze między dwoma interwałami.

Interesujące artykuły...