原文: https://www.programiz.com/java-programming/examples/sum-prime-numbers

在该程序中,您将学习检查给定的数字是否可以表示为两个质数之和。 这是借助 Java 中的循环和break语句完成的。

为了完成此任务,创建了checkPrime()函数。

如果传递给函数的数字是质数,则checkPrime()返回 1。

示例:作为两个质数之和的整数

  1. public class CheckPrime {
  2. public static void main(String[] args) {
  3. int number = 34;
  4. boolean flag = false;
  5. for (int i = 2; i <= number / 2; ++i) {
  6. // condition for i to be a prime number
  7. if (checkPrime(i)) {
  8. // condition for n-i to be a prime number
  9. if (checkPrime(number - i)) {
  10. // n = primeNumber1 + primeNumber2
  11. System.out.printf("%d = %d + %d\n", number, i, number - i);
  12. flag = true;
  13. }
  14. }
  15. }
  16. if (!flag)
  17. System.out.println(number + " cannot be expressed as the sum of two prime numbers.");
  18. }
  19. // Function to check prime number
  20. static boolean checkPrime(int num) {
  21. boolean isPrime = true;
  22. for (int i = 2; i <= num / 2; ++i) {
  23. if (num % i == 0) {
  24. isPrime = false;
  25. break;
  26. }
  27. }
  28. return isPrime;
  29. }
  30. }

运行该程序时,输出为:

  1. 34 = 3 + 31
  2. 34 = 5 + 29
  3. 34 = 11 + 23
  4. 34 = 17 + 17