Так что и упражнения для python я полностью застрял! у вас есть случайная функция в [a,b], вы уже знаете, что a отрицательно, а b положительно и имеет только ОДИН корень. Истинный корень: -0,94564927392359, и вам нужно сделать определение, которое найдет корень (или ноль), который будет ближе всего к истинному корню с минимальной разницей eps. eps — это 1e-8 или 1e-6. Обратите внимание, что мы не знаем истинный корень, ранее был пример, чтобы понять, какое число мы ищем. о. Также нам дано выше:
import math
def fnc(x):
""" This the function in which root we are looking for """
global a, b, eps
if not hasattr(fnc, "counter"):
fnc.counter = 0
fnc.maxtimes = (int)(0.1+math.ceil(math.log((b-a)/eps, 2.0)+2))
if fnc.counter<fnc.maxtimes:
fnc.counter += 1
return x*x*x-x-0.1
else:
return 0.0 ##
МЫ должны начать с этого:
def root(f, a, b, eps):
(Извините за мой английский )