鱼C论坛

 找回密码
 立即注册
查看: 1743|回复: 6

[已解决]零基础python入门006课后题

[复制链接]
发表于 2020-11-19 00:10:53 | 显示全部楼层 |阅读模式
5鱼币
题目:爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。
(小甲鱼温馨提示:步子太大真的容易扯着蛋~~~)


X=input("输入最大查找范围:")
A=int(X)
t=0
h=0
for i in range(1,A):
    if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
        t=1
    else:
        t=0
    if(t==1):
        if(h==0):
            print("满足要求的阶梯数为:",end='')
            h=1
        print(i,end='  ')
if(t==0):
    print("范围内没有满足要求的数")

ps:最后两行怎么改,才能在范围不满足的情况下输出、范围满足的情况下不输出
最佳答案
2020-11-19 00:10:54
X=input("输入最大查找范围:")
A=int(X)
t=0
h=0
无=0
for i in range(1,A):
    if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
        t=1
        无=1
    else:
        t=0
    if(t==1):
        if(h==0):
            print("满足要求的阶梯数为:",end='')
            h=1
        print(i,end='  ')
if(无==0):
        print("范围内没有满足要求的数")

判断条件错了,最后要判断的是循环结束后,t==1的次数是不是0,而不是t是不是0

p1.jpg

p2.jpg

最佳答案

查看完整内容

判断条件错了,最后要判断的是循环结束后,t==1的次数是不是0,而不是t是不是0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-19 00:10:54 | 显示全部楼层    本楼为最佳答案   
X=input("输入最大查找范围:")
A=int(X)
t=0
h=0
无=0
for i in range(1,A):
    if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
        t=1
        无=1
    else:
        t=0
    if(t==1):
        if(h==0):
            print("满足要求的阶梯数为:",end='')
            h=1
        print(i,end='  ')
if(无==0):
        print("范围内没有满足要求的数")

判断条件错了,最后要判断的是循环结束后,t==1的次数是不是0,而不是t是不是0

p1.jpg

p2.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-19 07:15:05 | 显示全部楼层
X=input("输入最大查找范围:")
A=int(X)
t=0
h=0
for i in range(1,A):
    if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
        t=1
    else:
        t=0
    if(t==1):
        if(h==0):
            print("满足要求的阶梯数为:",end='')
            h=1
        print(i,end='  ')
if(t==0):
    if(h==0):
        print("范围内没有满足要求的数")

上一个是为了直观,其实只要在最后加上if(h==0):的条件就完了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-19 07:39:33 | 显示全部楼层
X=input("输入最大查找范围:")
A=int(X)
t=0
for i in range(1,A):
    if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
        if(t==0):
            print("满足要求的阶梯数为:",end='')
            t=1
        print(i,end='  ')
if(t==0):
        print("范围内没有满足要求的数")

当然还可以更简单,不需要h变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-19 10:24:51 | 显示全部楼层
  1. X=input("输入最大查找范围:")
  2. A=int(X)
  3. t=0
  4. for i in range(1,A):
  5.     if(i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
  6.         if t == 0:
  7.             print("满足要求的阶梯数为 : " , i , end = '')
  8.         else:
  9.             print(" , " , i , end = '')
  10.         t += 1
  11. if t == 0 :
  12.     print("范围内没有满足要求的数")
  13. else:
  14.     print()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-11-19 10:27:38 From FishC Mobile | 显示全部楼层
“或许” 发表于 2020-11-19 07:39
当然还可以更简单,不需要h变量

大佬太棒了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-11-19 10:30:36 From FishC Mobile | 显示全部楼层
jackz007 发表于 2020-11-19 10:24

谢谢大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-22 00:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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