哥德巴赫思想

验证:2000以内的正偶数都能够分解为两个素数之和。 

  1 #include<stdio.h>
  2 #include<math.h>
  3 
  4 int fflag(int i);
  5 
  6 int main()
  7 {
  8     int i,n;
  9     for(i = 4;i <= 2000;i += 2)
 10     {
 11         for(n = 2;n < i;n++)
 12         {
 13             if (fflag(n))
 14             {
 15                 if(fflag(i-n))
 16                 {
 17                     printf("%d = %d+%d\n",i,n,i-n);
 18                     break;
 19                 }
 20             }
 21             if(n == i)
 22             {
 23                 printf("error %d\n",i);
 24             }
 25         }
 26     }
 27 }
 28     fflag(int i)
 29     {
 30         int j;
 31         if(i <= 1)
 32         {
 33             return (0);
 34         }
 35         if(i == 2)
 36         {
 37             return (1);
 38         }
 39         if(!(i % 2))
 40         {
 41             return (0);
 42         }
 43         for(i = 3;j <= (int)(sqrt((double)i) + 1);j += 2)
 44         {
 45             if(!(i % j))
 46             {
 47                 return (0);
 48             }
 49         }
 50     return (1);
 51     return;
 52 }
~                            

猜你喜欢

转载自blog.csdn.net/weixin_42720729/article/details/81275413