读入整数n,对于大于等于6的偶数,分解为两个素数之和a+b,且符合a<=b
1个回答
展开全部
import java.util.ArrayList;
import java.util.Scanner;
public class KnowTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
ArrayList<Integer> prime = new ArrayList<Integer>();
System.out.println("输入一个大于6的偶数:");
int n = sc.nextInt();
int j = 0;
System.out.println("小于"+n+"的素数有:");
for(int i = 2;i < n;++i)
if(isPrime(i)){
prime.add(i);
j++;
System.out.print(i+" ");
}
System.out.println();
for(int i = 0;i < j;++i)
for(int k = 0;k < j;++k){
if(prime.get(i)+prime.get(k)==n&&prime.get(i)<=prime.get(k))
System.out.println(n+"可以分解为:"+prime.get(i)+"+"+prime.get(k));
}
}
public static boolean isPrime(int x){
int a = (int)Math.sqrt(x)+1;
for(int i = 2; i < a;++i)
if(x%i == 0)
return false;
return true;
}
}
追问
可以帮我看一道java题目吗,已经发布了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询