Python小工具:台阶计算

李金龙
李金龙
管理员
496
文章
0
粉丝
Python习题评论5,22113字数 294阅读模式

题目说明:

有一个长阶梯,每步上2阶剩余1阶;上3剩2;上5剩4;上6剩5;上7剩0

参考答案

  • 答案1

 

  1. i = 0
  2. while i < 1000:
  3.    if (i+1)%2== 0 and (i +1)%3== 0 and (i+1)%5==0 and (i+1)%6==0 and i%7==0:
  4.       print(i, end ='  ')
  5.       i += 1
  6.    else:
  7.       i += 1

通过循环每次执行计算,运用求余的方法,使条件都成立,记住and 是要两者都为True的时候,才返回True否则返回False

 

  • 答案2
  1. step = 7
  2. num = 1
  3. flag = 0
  4. while num <= 100:
  5.    if(step%2==1) and (step%3==2) and (step%5 == 4) and (step%6==5):
  6.       flag = 1
  7.    else:
  8.       step = 7 * (num +1)
  9.    num +=1
  10.    print(num)
  11. if flag ==1:
  12.    print('阶梯数是:',step)
  13. else:
  14.    print('在程序限定的范围内找不到答案')

这个答案,是论坛发布的参考答案,仔细看了半天才明白过来。

  • num是怎么跳出了循环

一开始没注意到这个问题,后来看到有群友在对这个问题提问,然后去测试了num是跑到了什么结果才返回结果,后来发现当num==16的时候,所以条件都符合,它只是给flag进行了赋值为1,而num还在继续往17,18,19数字跑,当满足=100这个条件的时候,再跑一趟num等于101,循环结束,输出step的值。

 
李金龙
  • 本文由 李金龙 发表于2017年2月28日 21:56:38
  • 转载请务必保留本文链接:https://www.lijinlong.cc/python/pyxt/1502.html
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证