java 输入一个数,判断这个数是由哪两个质数相加组成JAVA
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/05 16:41:48
java 输入一个数,判断这个数是由哪两个质数相加组成JAVA
java 输入一个数,判断这个数是由哪两个质数相加组成
JAVA
java 输入一个数,判断这个数是由哪两个质数相加组成JAVA
package p1;
import java.util.Scanner;
public class Lab9
{
\x09public static boolean isPrime ( int start, int number )
\x09{
\x09\x09if (number < 2)
\x09\x09{
\x09\x09\x09return false;
\x09\x09}
\x09\x09start++;
\x09\x09if (start > number / 2)
\x09\x09{
\x09\x09\x09return true;
\x09\x09}
\x09\x09if (number % start == 0)
\x09\x09{
\x09\x09\x09return false;
\x09\x09}
\x09\x09return isPrime (start, number);
\x09}
\x09private static int what ( int number )
\x09{
\x09\x09int code = -1;
\x09\x09for ( int i = 2; i < number; i++ )
\x09\x09{
\x09\x09\x09for ( int j = 2; j < number; j++ )
\x09\x09\x09{
\x09\x09\x09\x09if (isPrime (1, i) && isPrime (1, j) && i + j == number)
\x09\x09\x09\x09{
\x09\x09\x09\x09\x09System.out.println (i + " + " + j + " = " + number);
\x09\x09\x09\x09\x09code = 1;
\x09\x09\x09\x09}
\x09\x09\x09}
\x09\x09}
\x09\x09return code;
\x09}
\x09public static void main ( String[] args )
\x09{
\x09\x09Scanner scanner = new Scanner (System.in);
\x09\x09while (true)
\x09\x09{
\x09\x09\x09System.out.print ("input a number: ");
\x09\x09\x09String line = scanner.nextLine ().trim ();
\x09\x09\x09if ("".equals (line))
\x09\x09\x09{
\x09\x09\x09\x09scanner.close ();
\x09\x09\x09\x09break;
\x09\x09\x09}
\x09\x09\x09int number = -1;
\x09\x09\x09try
\x09\x09\x09{
\x09\x09\x09\x09number = Integer.parseInt (line);
\x09\x09\x09}
\x09\x09\x09catch (NumberFormatException e)
\x09\x09\x09{
\x09\x09\x09\x09System.out.println ("error. ");
\x09\x09\x09\x09continue;
\x09\x09\x09}
\x09\x09\x09int code = what (number);
\x09\x09\x09if (code < 0)
\x09\x09\x09{
\x09\x09\x09\x09System.out.println ("nothing...");
\x09\x09\x09}
\x09\x09}
\x09}
}