趣味素数-梅森尼数-java

来源:互联网 发布:淘宝大学视频教程下载 编辑:程序博客网 时间:2024/05/21 19:36

问题描述:

法国科学家梅森尼对这类形如2^n-1的素数特别感兴趣,做过很多有意义的工作,后人就把此类数命名为梅森尼数。

已经证明了,如果2^n-1是素数,则幂指数必须是素数,然而,反过来并不对,当n是素数时,2^n-1不一定是素数。

编程找出指数n在[2,50]中的梅森尼数。


public class Main {public static void main(String[]Args){  for(int n=2 ; n<=50 ; n++){//确保n为素数    且2^n-1也是素数   if(isPrimeNum(n)&&isPrimeNum((int)(Math.pow(2, n)-1))){ System.out.printf("2^%d-1=%d  \n",n,(int)(Math.pow(2, n)-1));}}}public static boolean isPrimeNum(int a){//判断是否是素数for(int i=2 ; i<=Math.sqrt(a); i++){if(a%i==0){return false;}}return true;}}


1 0