| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 12454 人关注过本帖
标题:爱因斯坦阶梯问题,求解释
只看楼主 加入收藏
永战
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-9-23
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
爱因斯坦阶梯问题,求解释
设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;每步跨7阶,刚好到阶顶,问共有多少阶梯?
程序代码:
#include<stdio.h>
main()
{
   int x=7;
   while(!(x%2==1&&x%3==2&&x%5==4&&x%6==5))
   {
      x+=14;
   }
   printf("\n%d",x);
   getch();
}

为什么是x+=14而不是x+=7呢,结果一样,但我不明白是什么道理,那位能给解惑,不甚感激!
搜索更多相关主题的帖子: 多少 爱因斯坦 
2012-05-27 22:28
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:5 
最起码是7的奇数倍。不然就是 2 的倍数,不可能会每步跨2阶,最后余1阶。
2012-05-27 22:51
永战
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-9-23
收藏
得分:0 
回复 2楼 pangding
我知道应该是7的倍数,但为什么用了14,这样比7更好,但14是什么道理
2012-05-28 10:25
S_Ringo
Rank: 4
来 自:歌舞伎町
等 级:业余侠客
帖 子:94
专家分:230
注 册:2012-4-15
收藏
得分:5 
每步跨2阶,余1阶,那么,显然应该是奇数……
首先定义x=7,那么如果x=x+7的话,那么就是奇偶更替了,这样会多做一半无用的计算,
因为偶数显然是不符合要求的(那么14、28等等就不符合要求了)
如果x=x+14的话,就可以保证每次的x都是奇数……
明白了么?
2012-05-28 14:46
jfei
Rank: 4
来 自:郑州
等 级:业余侠客
帖 子:92
专家分:268
注 册:2011-8-27
收藏
得分:5 
while(!(x%2==1&&x%3==2&&x%5==4&&x%6==5))
   {
      //,这里面的东西什么时候执行呢?
   }


虾米们!!!有意者加QQ 2434202652,2632939128联系我
2012-05-28 15:23
永战
Rank: 1
等 级:新手上路
帖 子:26
专家分:0
注 册:2011-9-23
收藏
得分:0 
回复 5楼 jfei
括号里有一个条件不满足就执行循环体
2012-05-28 22:16
qq1274371820
Rank: 1
等 级:新手上路
帖 子:149
专家分:0
注 册:2013-11-24
收藏
得分:0 
while(!(x%2==1&&x%3=2&&x%5=4&&x%6==5))
里面的“!”是什么意思呢?

自定义人生。。。
2013-11-28 13:49
李家二大爷
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-10-23
收藏
得分:0 
每步跨2阶,余1阶,那么,显然应该是奇数……
首先定义x=7,那么如果x=x+7的话,那么就是奇偶更替了,这样会多做一半无用的计算,
因为偶数显然是不符合要求的(那么14、28等等就不符合要求了)
如果x=x+14的话,就可以保证每次的x都是奇数……
明白了么?[/quote]
2016-10-23 13:06
快速回复:爱因斯坦阶梯问题,求解释
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035359 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved