У цій програмі ви навчитеся перевіряти, чи можна дане число виразити сумою двох простих чисел чи ні. Це робиться за допомогою циклів та операторів break в Java.
Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування Java:
- Методи Java
- Java для циклу
- Заява про Java, якщо … ще
Приклад: Представити число як Суму двох простих чисел
public class Main ( public static void main(String() args) ( int number = 34; boolean flag = false; for (int i = 2; i <= number / 2; ++i) ( // condition for i to be a prime number if (checkPrime(i)) ( // condition for n-i to be a prime number if (checkPrime(number - i)) ( // n = primeNumber1 + primeNumber2 System.out.printf("%d = %d + %d", number, i, number - i); flag = true; ) ) ) if (!flag) System.out.println(number + " cannot be expressed as the sum of two prime numbers."); ) // Function to check prime number static boolean checkPrime(int num) ( boolean isPrime = true; for (int i = 2; i <= num / 2; ++i) ( if (num % i == 0) ( isPrime = false; break; ) ) return isPrime; ) )
Вихідні дані
34 = 3 + 31 34 = 5 + 29 34 = 11 + 23 34 = 17 + 17
У наведеному вище прикладі ми створили checkPrime()
метод, щоб визначити, чи є число простим чи ні. Метод повертає, true
якщо передане число є простим.
Тут ми маємо номер 34 . Програма намагається перевірити, чи можна 34 представити як суму двох простих чисел.
Робота програми
- Спочатку ми запускаємо
for
цикл зi = 2 to number / 2
. - Усередині
for
циклу ми використовували дваif
твердження. Перше твердження перевіряє, чи я простий чи ні.
Якщо true, другеif
твердження перевіряє, чиnumber - i
є простим чи ні. Це тому, що сума i та число - i дорівнює числу. - Якщо друге твердження також є
true
, тоді можна сказати, що число 34 є дійсною сумою двох простих чисел.