17856563101 发表于 2022-8-25 15:07:03

舍罕王的问题

i = 0
sum = 0

while i <= 64:
    wheats = pow(2,i)
    sum = sum + wheats
    i = i + 1
print("舍罕王应该给达依尔", sum, "粒麦子!")
这是我写的
输出结果跟答案不一样

i = 1
sum = 0

while i <= 64:
    wheats = pow(2,i-1)
    sum = sum + wheats
    i = i + 1
print("舍罕王应该给达依尔", sum, "粒麦子!")
这是答案
我想知道为什么要i-1,i的初始值可以从0开始吗?
求大佬解释一下{:10_266:}

临时号 发表于 2022-8-25 17:12:40

i可以从0开始,不过条件得改成i < 64
i = 0
sum = 0

while i < 64:
    wheats = pow(2,i)
    sum = sum + wheats
    i = i + 1
print("舍罕王应该给达依尔", sum, "粒麦子!")

17856563101 发表于 2022-8-25 17:15:15

临时号 发表于 2022-8-25 17:12
i可以从0开始,不过条件得改成i < 64

我原理没弄懂 第64个格子对应的幂应该是63 感谢大佬
页: [1]
查看完整版本: 舍罕王的问题