Witam. Moje ostatnie zadanie związane z obliczeniami numerycznymi i pythonem. Poprzednio bardzo pomocne okazały się wasze wskazówki więc i tym razem postanowiłem tutaj napisać.
Dychotomia:
a oto kod:
import math
def funkcja(x):
return (pow(0.5*x,2) - math.sin(x))
Xl=60
Xp=150
Xm = (Xl+Xp)/2
f = funkcja
while True:
if(f(Xl)>f(Xp)):
Xu = Xm
else:
Xl = Xm
if(Xm>100):
break
print ("Wynik: %.2f")%f(Xm)
Jak widać program działa, problem w tym że chciałem się upewnić czy wykonałem go dobrze i czy zwraca prawidłowy wynik. Mógłby ktoś z was to potwierdzić lub mnie poprawić?