求梅森素数

#include<stdio.h>
#include<string.h>
#include<math.h> 
int main()
{ 

long int t,n,l,Mn,i,j,k,a;

scanf("%d",&n);
if(n>=2)
{ printf("M(2)=3\n");

for(i=3;i<=n;i++)
 {
 t=1;
 for(j=2;j<i;j++)
    if(i%j==0) t=0;
  if(t)  
  {k=pow(2,i)-1; a=1;
   for(l=2;l<k;l++)
   {
   
    if(k%l==0)
	 {	a=0; continue;}}
	 if(a) printf("M(%d)=%ld\n",i,k);
}}}

  return 0; 
}

猜你喜欢

转载自blog.csdn.net/weixin_43742177/article/details/84781481