| 1
2
3
4
5
6
7
8
9
10
11
12
 | | #! /usr/bin/env python |  | import sys |  | from typing import Final |  |   |  | n = float(sys.argv[1]) |  | EPSILON: Final[float] = sys.float_info.epsilon |  |   |  | x = n                                         # !$x_0 = n$! |  | while abs(x - (q := n / x)) > (EPSILON * x):  # !$\left|\frac{x^2-n}{x^2}\right| > \varepsilon $! |  |     x = (x + q) / 2.0                         # !$x_{i+1} = \frac{1}{2}(x_i + \frac{n}{x_i})$! |  |   |  | print(f"sqrt({n}) ~ {x}") | 
 |