[英]why is my loop of cubed digits producing incorrect outputs?
我在下面的代码中遇到了 output 的问题:
m=10
total_n = 0
n = 1
while n <= m // 2:
for i in range(0, n):
total_n += (n - i) ** 3
n += 1
print(total_n)
由于某种原因,output 为 1,10,46,146,371。
但是当我把它写在纸上时,它应该是 1,9,36,100,225。
知道代码的哪一部分不太正确吗? 干杯
要获得所需的正确结果,只需在第一个循环内初始化total_n
(参见下面的代码)。 你这样做的方式, total_n
跟踪所有的总和,但似乎你只想要每个n
的总和。
m = 10
n = 1
while n <= m // 2:
total_n = 0
for i in range(0, n):
total_n += (n - i) ** 3
n += 1
print(total_n)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.