鱼C论坛

 找回密码
 立即注册
查看: 1215|回复: 1

006 爱因斯坦

[复制链接]
发表于 2020-6-29 19:51:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
x = 7
i = 1
flag = 0

while i <= 100:
    if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
        flag = 1
    else:
        x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
    i += 1

if flag == 1:
    print('阶梯数是:', x)
else:
    print('在程序限定的范围内找不到答案!')

这个题目中在while 循环里的if 条件从句中,能否在最后加一个 (x%7==0)? 为啥是在else语句中放一个7的倍数这样的逻辑?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-29 20:01:49 | 显示全部楼层
本帖最后由 heidern0612 于 2020-6-29 20:10 编辑

题目不是说了吗,x一定是7的倍数,既然在if分支里找不到,那就找7的下一个倍数里的循环啊。

也就是说,7以内找不到,就找7到14以内的,7到14以内找不到,就找14到21的,后面类推。

你得根据题目编写程序,题目里也没说需要x%7==0的判断。

但是既然符合x一定是7的倍数,你加上也是可以的,但是没必要加,加上了不多此一举吗?

前面if分支那些条件已经够判断是否阶梯数了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-20 07:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表