正文

一道我应该作的题目2006-11-29 19:01:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/zean/21039.html

分享到:

任何一个大于等于6的偶数都可表示为两个素数之和。请列出100-200之间的所有偶数被表示成两个素数之和的全部形式。注意:如14可表示为14=3+11,还可表示为14=7+7(不需要再考虑14=11+3)。   作者:battle专家分:510  会员信息 发短消息   所属BLOG 发表时间:2006-11-28 21:51:00    [回复]  [引用] 1 楼   #include<iostream.h>#include<math.h>bool prime(int n);void main(){     int number,n;     for(number=100;number<=200;number++)     {         for(n=number/2;n>1;n--)             if(prime(n)&&prime(number-n))             {                 cout<<number<<"="<<n<<"+"<<number-n<<endl;             }     }}bool prime(int n){    for(int i=2;i<=sqrt(n);i++)        if(n%i==0)break;        if(i>sqrt(n))            return true;    return false;}     此帖尚未评分 作者:幻雪专家分:200  会员信息 发短消息   所属BLOG 发表时间:2006-11-29 17:02:00    [回复]  [引用] 2 楼   1楼的朋友:    两个for语句可以改改,提高算法的效率 for(number=100;number<=200;number+=2)     {         for(n=number/2-1;n>1;n-=2)  其实你与昨日的我 活到今天变化甚多   此帖尚未评分 作者:Mcemil专家分:740  会员信息 发短消息   所属BLOG 发表时间:2006-11-29 17:10:00    [回复]  [引用] 3 楼   引用: 1楼的朋友:    两个for语句可以改改,提高算法的效率 for(number=100;number<=200;number+=2)     {         for(n=number/2-1;n>1;n-=2)可笑啊,你怎么保证n=number/2-1一定是一个奇数歌德巴赫猜想:任何大于2的偶数,都可以表示成两个质数之和.  To own c++'s soul,to be an exceptional programmer.   此帖尚未评分 作者:redlives专家分:2940  会员信息 发短消息   所属BLOG 发表时间:2006-11-29 17:16:00    [回复]  [引用] 4 楼   可以试试开辟一个数组,把100-200以内的素数存起来,这样是否方便些呢  工作原因,所上网站有限,请站内联系革命尚未成功,同志仍需努力 just to try   此帖尚未评分 作者:Johnnyyeen专家分:340  会员信息 发短消息   所属BLOG 发表时间:2006-11-29 18:02:00    [回复]  [引用] 5 楼   1 找出1-200所有质数2 2重循环迭代任意量个数的和,若大100,小于200则进入33 %2余0输出这两个数     此帖尚未评分 作者:幻雪专家分:200  会员信息 发短消息   所属BLOG 发表时间:2006-11-29 18:34:00    [回复]  [引用] 6 楼   引用: 可笑啊,你怎么保证n=number/2-1一定是一个奇数歌德巴赫猜想:任何大于2的偶数,都可以表示成两个质数之和.    谢谢这位朋友!    没有运行查看结果就发上去了,第二个for语句会把有些奇数也排除掉,应该先对number进行判断的    歌德巴赫猜想是任何大于等于6的偶数,不是2

阅读(2430) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册