继承我的方法:
def geometricSum(commonRatio, firstTerm, lastTerm):
return ((firstTerm - lastTerm) * commonRatio) / (1 - commonRatio)
口译员测试:
>>> geometricSum(1.0,1.0,100.0)
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
File "F:\PortablePython_1.1_py3.0.1\sumOfGeometric.py", line 2, in geometricSum
return ((firstTerm-lastTerm)*commonRatio)/(1-commonRatio)
ZeroDivisionError: float division
答案 0 :(得分:10)
你除以零。 commonRatio为1.0,因此分母为1-1.0 = 0.
答案 1 :(得分:9)
答案 2 :(得分:7)
1 - commonRatio = 1 - 1 = 0.
python中尚不支持除以0。或者在数学中。
答案 3 :(得分:3)
Python告诉你问题是什么:
ZeroDivisionError:浮动分区
请阅读错误消息。它显示ZeroDivisionError
,因为Error
试图通过Division
执行Zero
。你除以1 - commonRatio
,在程序中的那一点为零。
答案 4 :(得分:1)
看起来你的commonRatio是1,所以你总结了一个不同的系列。
答案 5 :(得分:1)
使用那些参数,你试图除以零......
commonRatio = 1.0
/ (1-commonRatio)
/ 0
这会引发ZeroDivisionError异常