Я пытаюсь подсчитать количество раз, которое оценивается f(x)
, не меняя слишком много кода, не похоже, что это должно быть очень сложно, но я не могу понять, как это понять.Простой способ подсчета количества вычислений def f (x)?
def f (x):
f = 12*x**5-45*x**4+40*x**3+5
return f
def bounding():
d=.1
x=6
n=0
while(n<50):
Lb=x-d
n+=1
Ub=x+d
if f(Lb)>=f(x) and f(Ub)<=f(x):
x=x+d
elif f(Lb)<=f(x) and f(Ub)>=f(x):
x=x-d
elif f(Lb)>=f(x) and f(Ub)>=f(x):
print("Lower bound:",Lb,"Upperbound:",Ub)
break
print (n)
bounding()
Я не знаю точно, что вы просите, но ваш код имеет много избыточных вещей в нем, как и вся функция 'bounding()'. – TigerhawkT3
Когда оценивается 'def f (x)', создается функция. Это происходит только один раз в вашем коде. Вы имеете в виду количество раз, когда функция 'f' вызывается и выполняется? – jpmc26