题目描述:
任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对
输入描述:
输入一个偶数
输出描述:
输出两个素数
import java.util.Scanner;
public class Main
{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext())
{
int n = scanner.nextInt();
int n1 = n / 2;
int n2 = n - n1;
while (n1 >= 2 && n2 <= n - 2)
{
if (isPrime(n1) && isPrime(n2))
{
System.out.println(n1);
System.out.println(n2);
break;
}
else
{
n1--;
n2++;
}
}
}
}
public static boolean isPrime(int n)
{
int i = 2;
for (; i < n; i++)
{
if (n % i == 0)
return false;
}
return true;
}
}