【发布时间】:2010-07-26 00:32:56
【问题描述】:
我正在尝试编写一个短代码来计算由于每日利息而达到银行给定本金所需的天数。在 IDLE 中运行时,使用下面的代码不会产生任何错误,但计数器返回 0。有什么我错过的想法吗?
def main():
# irrelevant code elided by msw, Bal, Int and Tar are numeric
counter = 0
for i in range(0):
if (Bal * Int) == Tar:
print '1'
else:
counter + 1
print counter
【问题讨论】:
-
也许我遗漏了一些明显的东西,但 'range(0)' 将返回一个空列表,并且你的 'for' 循环永远不会开始。
-
@Greg Schmidt:为了那些回答的人的利益,最好发布证明失败所需的最少代码(它也可以帮助您看到自己的错误)。
-
老实说,我看不出这个程序是如何工作的。你几乎可以肯定永远不会让 bal*int 完全等于 tar。你需要某种范围。此外,您的余额似乎不是每天都在产生利息,因此您只是一遍又一遍地进行相同的比较 (Bal * Int) == Tar。报废或报废柜台。此外,您似乎没有使用提示(?)来使用数学函数(也许是幂函数?)
-
第一行代码:从数学导入 * 它被编辑掉了。
-
您的代码缺少最重要的东西:cmets 用英语描述您要完成的工作。