package com.itheima;
import java.util.Scanner;
/*
* 题目:一个偶数总能表示为两个素数之和。
*/
public class Test40 {
public static void main(String[] args) {
//键盘随意录入一个偶数
System.out.println("请输入一个偶数:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
//循环找出两个素数之和等于这个偶数
for(int i=1;i<num;i++){
for(int x=i+1;x<num;x++){
//这两个数必须是素数,且之和等于这个偶数
if(isSuSHu(i) && isSuSHu(x) && num==i+x){
System.out.println("这个偶数可以表示成两个素数之和:");
System.out.println(num+"="+i+"+"+x);
}
}
}
}
public static boolean isSuSHu(int num){
boolean flag=true;
for(int i=2;i<num;i++){
if(num%i==0){
flag=false;
break;
}
}
return flag;
}
}
这样可以把一个偶数写成两个素数之和,但我觉得还是不能证明任意偶数,大家有没有什么方法证明任意偶数,求思路 |
|