我应该写一个代码,找到三次多项式的根,然后检查它是否收敛以及在哪里收敛。我写了一段代码,使用了各种帮助,尽管我对它何时起作用感到mixed贬不一。我的代码返回了一组值,但是由于某种原因,存在偏差,例如,不是取x = 1而是取x = 1.0000000000000007并抛出了某些结果(在多项式中,我取根之一为0,并且结果很难注意到,对于-0.5和1的根可以很容易地看到它。
每当它正确检查收敛性时,我都会非常怀疑
if (x>10):
print("rozbieżny")
break
应该检查零件(rozbieżny表示不收敛) 正确吗?
最后,我想在找到的末尾根源上打印我的代码,但是我不确定该怎么做。
感谢您的时间(希望能对您有所帮助)。
x=0
def f(x):
f=x**3.0-(x**2.0/2.0)-(x/2.0)
return (f)
def frange(start, stop, krok):
i=start
while i < stop :
yield i
i += krok
a=-2.0
b=2.0
c=0.1
for x in frange(a,b,c):
print("pierwszy x",x)
for i in range (5):
if (x>10):
print("rozbieżny")
break
else:
x=x-f(x)
if (x<10):
print(x)