鱼C论坛

 找回密码
 立即注册
查看: 3014|回复: 11

[已解决]求救,谢谢

[复制链接]
发表于 2021-5-22 20:05:44 | 显示全部楼层 |阅读模式

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

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

x
爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。题目:请编程求解1000级以内满足条件的阶梯数?

x=1
while 7*x<=1000:
    if (x%2==1) and (x%3==2) and (x%4==3) and (x%5==4) and (x%6==5):
        print(7*x)
        x=x+1
    else:
        x=x+1

运行后结果413,833
??????????????怎么改??/
最佳答案
2021-5-22 20:25:28


你 if 条件多了 x%4 ==3 而且 你 if 条件应该计算 x*7 的数,而不是 x ,或者如下代码

参考代码:
x=7
while x<=1000:
    if (x%2==1) and (x%3==2) and (x%5==4) and (x%6==5):
        print(x)
    x=x+7
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-5-22 20:24:28 | 显示全部楼层
本帖最后由 柿子饼同学 于 2021-5-22 20:33 编辑
x = 7

while x < 1000:
    if (x%2==1) and (x%3==2) and (x%4==3) and (x%5==4) and (x%6==5):
        print(x)
        x = x + 7
    else:
        x = x + 7
乘7多麻烦啊,直接每次加7就好啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-22 20:25:28 | 显示全部楼层    本楼为最佳答案   


你 if 条件多了 x%4 ==3 而且 你 if 条件应该计算 x*7 的数,而不是 x ,或者如下代码

参考代码:
x=7
while x<=1000:
    if (x%2==1) and (x%3==2) and (x%5==4) and (x%6==5):
        print(x)
    x=x+7
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-22 20:30:45 | 显示全部楼层
这样改就行了,解释在注释中
x = 7 #因为一次走7个能正好走完所以x必是7的倍数,所以定义为7先

while x < 1000:
    if (x % 2 == 1) and (x % 3 == 2) and (x % 5 == 4) and (x % 6 == 5):
        print('阶梯数是:', x)
        break
    else:
        x=7+x #设置7的倍数
    
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-22 20:35:15 | 显示全部楼层
看看一楼~
对不起才写完
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-22 21:15:42 | 显示全部楼层
柿子饼同学 发表于 2021-5-22 20:24
乘7多麻烦啊,直接每次加7就好啦

谢谢,你的是最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-22 21:16:13 | 显示全部楼层
x = 7

while x < 1000:
    if (x%2==1) and (x%3==2) and (x%4==3) and (x%5==4) and (x%6==5):
        print(x)
        x = x + 7
    else:
        x = x + 7
这是最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-22 21:16:54 | 显示全部楼层


不是这个意思,就是想帮帮你
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-22 21:17:32 | 显示全部楼层
肖-肖 发表于 2021-5-22 20:30
这样改就行了,解释在注释中

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-22 21:18:48 | 显示全部楼层
肖-肖 发表于 2021-5-22 20:30
这样改就行了,解释在注释中

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-22 21:21:06 | 显示全部楼层
柿子饼同学 发表于 2021-5-22 20:35
看看一楼~
对不起才写完

真的非常感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-22 22:40:44 | 显示全部楼层
我不知道你那个要怎么改。我是另外写的代码。这个可以实现。

x = 0
x += 1
while(x<=1000):
    if(x % 7 == 0 and x % 2 == 1 and x % 3 == 2 and x % 5 == 4 and x % 6 == 5 ):
        print(x)
        x+=1
    else:
        x+=1

我的结果

我的结果
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-9 01:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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