为了账号安全,请及时绑定邮箱和手机立即绑定

利用 while True 无限循环配合 break 语句,计算 1 + 2 + 4 + 8 + 16 + ... 的前20项的和。


sum = 0

x = 1

n = 1

while True:

    if n > 20:

        break

    sum = sum + x

    x = x * 2

    n = n + 1 

print sum

哪位大神可以和我说说这串代码的意思?我怎么看不懂了 特别是 x = x * 2,n = n + 1   。

正在回答

3 回答


while True:

    if n > 20:

        break

这里就是取前20项的和,到第21项就退出

 sum = sum + x

这里就是每一项相加求和了

    x = x * 2

根据题意1,2,4,8,16.....都是二倍关系,因此赋值x = x * 2

    n = n + 1

这里就是从第一项到第二十项了


4 回复 有任何疑惑可以回复我~

x用来计算,n用来判断什么时候结束

0 回复 有任何疑惑可以回复我~

这是一个等比数列,倍数为2,所以每一项是前一项的2倍,x = x*2就是代表第几项是对应的数,n在这里则是项的序数,代表第多少项!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758363    人
  • 解答问题       8967    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

利用 while True 无限循环配合 break 语句,计算 1 + 2 + 4 + 8 + 16 + ... 的前20项的和。

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号