Загрузка данных


def f(x):
    return x**3+5.1*x**2-2.25*x-15.151
def fp(x):
    return 3*x**2+5.1*2*x-2.25
from scipy import optimize
x1=optimize.root_scalar(f,bracket=[-2,-1.5],method='bisect')
#print('x1=',x1)
x2=optimize.root_scalar(f,x0=5,method='newton',fprime=fp)
#print('x2=',x2)
x3=optimize.root(f,x0=-5)
#print('x3=',x3)
min1=optimize.minimize_scalar(f,bounds=[-2,2],method='bounded')
#print('min1=',min1)
max1=optimize.minimize(lambda x:-f(x),x0=-4)
#print('max1=',max1)
print('x1=',x1.root,'\n','x2=',x2.root,'\n','x3=',x3.x,'\n','xmin=',min1.x,'\n','fmin=',min1.fun,'\n','xmax=',max1.x,'\n','fmax=',-max1.fun)