Извлечение кубического корня на Python: примеры кода
Python

Извлечение кубического корня на Python: примеры кода

Razilator

Извлечение кубического корня - это процесс нахождения числа, которое при возведении в куб равно заданному числу. В этой статье мы рассмотрим, как можно вычислить кубический корень с помощью Python.

Вычисление кубического корня с помощью оператора **

Для вычисления кубического корня в Python можно воспользоваться простым математическим выражением x ** (1 / 3), которое вернет значение кубического корня x в виде числа с плавающей точкой.

Чтобы проверить правильность вычисления корня, можно округлить результат до ближайшего целого числа и возвести его в куб, а затем сравнить полученный результат с исходным значением x. Например, если дано x = 8, то код для вычисления кубического корня будет выглядеть следующим образом:

main.py
x = 8
cube_root = x ** (1./3.)

print(cube_root) # 2.0

Извлечение кубического корня методом Ньютона-Рафсона

Основная идея метода Ньютона-Рафсона состоит в том, чтобы начать с некоторого начального приближения x0 и последовательно уточнять его, используя следующую формулу:

x1 = (2*x0 + n / x0^2) / 3

Здесь n - это число, из которого мы хотим извлечь кубический корень.

Эту формулу можно продолжать, пока значение x не перестанет изменяться, т.е. пока разность между текущим и предыдущим значением x не станет меньше заданной точности. Вот как это выглядит в коде на Python:

main.py
def cubic_root(n, eps=1e-7):
    x0 = n
    while True:
        x1 = (2 * x0 + n / x0 ** 2) / 3
        if abs(x1 - x0) < eps:
            break
        x0 = x1
    return x1

Здесь n - это число, из которого мы хотим извлечь кубический корень, а eps - это точность, с которой мы хотим вычислить корень. По умолчанию точность равна 1e-7.

Пример использования:

main.py
def cubic_root(n, eps=1e-7):
    x0 = n
    while True:
        x1 = (2 * x0 + n / x0 ** 2) / 3
        if abs(x1 - x0) < eps:
            break
        x0 = x1
    return x1
    
print(cubic_root(27)) # 3.0
print(cubic_root(125)) # 5.0
print(cubic_root(1000)) # 10.0

Извлечение кубического корня с использованием библиотеки math

Для вычисления кубического корня с использованием библиотеки math в Python можно воспользоваться функцией cbrt(). Она возвращает кубический корень числа.

Пример использования:

main.py
import math

print(math.cbrt(27))  # 3.0
print(math.cbrt(125))  # 5.0
print(math.cbrt(1000))  # 10.0

Как видно из примера, использование библиотеки math гораздо проще и удобнее, чем реализация метода Ньютона-Рафсона вручную.

;