当我试图找出一个函数lnx的总面积时,最后我总是对除1以外的任何N的输入值得到0。只有当我选择N=1时才有效。当我在手册中将它们相加时,它看起来很好。我刚刚开始使用python,所以我不知道我的代码出了什么问题。
import math
from math import log
N=int(input(" Number of partitions: "))
dx=(3-2)//N
area=0
for i in range(1,N+1):
area += 0.5*((((math.log(i)))+math.log(i+1)))*(dx)
break
print (area)发布于 2019-03-31 16:03:07
在Python中,你有两个除法运算符。您使用了//,即实数下限除法运算符(它返回整数和浮点参数的下限值)。在您的代码中,您必须使用/,如果其中一个参数是浮点型,它将返回浮点值。
所以,你必须这样写:
dx=(3-2)/Nhttps://stackoverflow.com/questions/55438890
复制相似问题