mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-11-30 16:31:08 +00:00
9316e7c014
* flake8 --max-line-length=88 * fixup! Format Python code with psf/black push Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
27 lines
533 B
Python
27 lines
533 B
Python
import math
|
|
|
|
|
|
def intersection(function, x0, x1):
|
|
"""
|
|
function is the f we want to find its root
|
|
x0 and x1 are two random starting points
|
|
"""
|
|
x_n = x0
|
|
x_n1 = x1
|
|
while True:
|
|
x_n2 = x_n1 - (
|
|
function(x_n1) / ((function(x_n1) - function(x_n)) / (x_n1 - x_n))
|
|
)
|
|
if abs(x_n2 - x_n1) < 10 ** -5:
|
|
return x_n2
|
|
x_n = x_n1
|
|
x_n1 = x_n2
|
|
|
|
|
|
def f(x):
|
|
return math.pow(x, 3) - (2 * x) - 5
|
|
|
|
|
|
if __name__ == "__main__":
|
|
print(intersection(f, 3, 3.5))
|