鱼C论坛

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

[技术交流] Python:问题贴之台阶问题

[复制链接]
发表于 2017-8-9 21:19:05 | 显示全部楼层 |阅读模式

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

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

x
著名的台阶问题:

看不懂,看不懂,求解释

  1. x = 7
  2. i = 1
  3. flag = 0

  4. while i <= 100:#当i<= 100 执行while里面的语句(一直循环,直到i>100跳出循环)
  5.     if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):#假如x对2求余,的余数等于1,且x对3求余,的余数等于2.....
  6.         flag = 1                          #执行:把1赋值给flag
  7.     else:                                   #if条件不成立,执行下面语句
  8.         x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7#把7*(i +1) 赋值给x
  9.     i += 1                                #i = i+1

  10. if flag == 1:                                                                              
  11.     print('阶梯数是:', x)                              
  12. else:
  13.     print('在程序限定的范围内找不到答案!')
复制代码



看完注释,台阶问题就是这么简单!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-10-20 12:18:19 | 显示全部楼层
x = 7,因为题目说了,当每步上7阶,最后没有剩的,很明显阶数是7的倍数。
i= 1,是做倍数,7*1;7*2;7*3等等
flag = 0 ,先设一个变量,一旦第一个if成立后,则falg = 1,然后就是第二个if直接输出X。
其实我试了一下,while i <= 20都可以执行,所以不要被100所蒙圈,为什么要取100,100只是循环的次数。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 00:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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