0

我需要解决以下等式:(蟒)求解超越方程

0 = -1/x**0.5) - 2 * log((alpha * x**0.5) + beta) 

α和β中给出,我只需要迭代X直到在一定程度上。

我不是一个伟大的Python程序员,但喜欢实现这一个。 这怎么可能?

致以问候

+0

可能dublicate的http://stackoverflow.com/questions/22742951/solve-an-equation-using-a-python-numerical-solver-in-numpy –

+0

它不可能为我。有人可以尝试以某种方式获得x? – ventavox

回答

0

最聪明的做法是实施像Stanislav推荐的解决功能。由于浮点运算,您不能只迭代x的值直到方程式达到0。你将不得不.floor或.ceil你的价值,以避免无限循环。例如:

x = 0 

while True: 
    x += 0.1 
    print(x) 
    if x == 10: 
     break 

在这里,你会认为当它增加0.1到9.9时,x最终会达到10,但是这会一直持续下去。现在,我不知道你的值是整数还是浮点数,但我得到的是:不要迭代。使用已经构建的解决库。