java给定一个正整数,编写程序计算有多少对质数的和等于这个输入的正整数,并输出结果,输出值小于1000.
时间: 2023-04-30 07:05:05 浏览: 130
题目要求编写一个程序,计算有多少对质数的和等于这个输入的整数,并输出结果,输出值小于1000。
答案:
这个程序可以通过暴力算法解决。先判断每个数是否为质数,然后再计算它和另一个质数的和是否等于输入的整数。如果满足,则输出这两个质数。
代码示例:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int n = input.nextInt();
for (int i = 2; i <= n / 2; i++) {
if (isPrime(i) && isPrime(n - i)) {
System.out.println(i + " " + (n - i));
}
}
}
public static boolean isPrime(int num) {
if (num <= 1) {
return false;
}
for (int i = 2; i < num; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
}
这个程序采用了一个isPrime方法来判断一个数是否为质数。如果一个数是质数并且它和另一个质数的和等于输入的整数,那么就输出这两个质数。程序的时间复杂度为O(n^2)。
阅读全文