python 课后作业求助
舍罕王的失算 的作业解题思路应该是怎么样呀?因为没有解题思路,所以一直不知道怎么写。
下面为什么要用pow函数呢?
i = 1
sum = 0
while i <= 64:
wheats = pow(2, i-1)
sum = sum + wheats
i = i + 1
print("舍罕王应该给达依尔", sum, "粒麦子!")
pow函数返回x的y次方的值 你也可以不用pow函数,用**也是一样的
i = 1
sum = 0
while i <= 64:
wheats = 2 ** (i-1)
sum = sum + wheats
i = i + 1
print("舍罕王应该给达依尔", sum, "粒麦子!") 那为什么要用**或者pow呢? 这道题相当于是求2^0+2^1+……+2^63的值
pow(x,y)的作用是求x的y次方。
这段代码的作用是通过while循环,用一个累加器s不断累加,从i=1(此时wheats=2^0)累加到i=64(此时wheats=2^63),最终退出循环,得到答案
钟先森 发表于 2022-7-26 12:22
那为什么要用**或者pow呢?
题目要求2^0+2^1+2^2+2^3+......+2^63
这个代码的思路是用while循环循环64次,在这64次中计算2^(i-1)并累加到sum变量上
页:
[1]