一个验证歌德巴赫猜想的小程序

该博客记录两人合作编程,一人编写判断素数的 isPrime() 方法,另一人编写主方法 main() 验证歌德巴赫猜想。通过输入偶数,程序将其分解为两个素数之和并输出结果,同时处理输入异常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//尝试两人合作写程序,加深对方法的接口与实现的理解,其中一人负责写方法isPrime(),
//用于判断一个给定的正整数是否是素数,另一人负责写主方法main(),利用isPrime()验
//证歌德巴赫猜想:任何比2大的偶数可表示为两个素数只和.

/*
*auther starshus
*
*Date 04/11/20
*/
import java.io.BufferedReader;
import java.io.InputStreamReader;

//4.9.1
public class gedebahe
{
  public static void main( String [] args)
  {
   for (;;)
   {
   int a=-1,b,c;//b,c是分解出来的两个数
   System.out.print("Please input a oushu:");//输入一个偶数
   try
    {
     BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
     String inputLine = in.readLine();
     a = Integer.valueOf(inputLine).intValue();
    }catch (Exception exc)
    {
     System.out.println("Sorry,please input a number.");
     return;
    }
   if (a%2!=0)
    {
     System.out.println("Sorry,please input a oushu.");
     return;
    }
   for (b=1;b<a;b++)
    {
     c=(a-b);
     if(isPrime(b)&&isPrime(c))
     {
      System.out.println(a+"="+b+"+"+c);
      break;
     }
    }
   }
  } 
  public static boolean isPrime(int k)//方法用来判断一个数是否为偶数
 {
   int a;
   boolean t = true;
   if (k==1)
   return t;
   for (a=2;a<k;a++)
   {
    if (k%a==0)
    break;
   }
   if (a!=k)
   t=false;
   return t;
  }
}  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值