Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import math
- def bisection(f,a,b,N):
- if f(a)*f(b) >= 0:
- print("Błąd")
- return None
- a_n = a
- b_n = b
- for n in range(1,N+1):
- m_n = (a_n + b_n)/2
- f_m_n = f(m_n)
- if f(a_n)*f_m_n < 0:
- a_n = a_n
- b_n = m_n
- elif f(b_n)*f_m_n < 0:
- a_n = m_n
- b_n = b_n
- elif f_m_n == 0:
- print("Nie znaleziono rozwiazania")
- return m_n
- else:
- print("Błąd")
- return None
- return (a_n + b_n)/2
- print(bisection(math.sin,-1.5,1,25))
Advertisement
Add Comment
Please, Sign In to add comment