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

这个可以么

sum = 0 x = 1 n = 1 while True:    if n>20:    break    sum=sum+2**(x-1)    x=x+1    n=n+1 print sum #我觉得我这个没问题啊,为什么是错的啊

正在回答

3 回答

sum=sum+2**(x-1)这一行错了,应该是sum=sum+2**(n-1)

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

n等于20时也跳出循环,这个时候最后一项是2**18,才19项差一项,应该改成n>21。用这个代码x和n可以改成一个变量只用x就行用x判断是否跳出循环。

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

洛北辰

啊,大于20没错,是n>20,你这个也可以
2017-01-12 回复 有任何疑惑可以回复我~

2**(X-1) 那个*打了两遍

是从0开始加吗?你前面的x=1.后面sum加的是x-1,就是从0开始加

再就是最后一句print要顶头写昂


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

举报

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

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

进入课程

这个可以么

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信