Дано квадратное уравнение:
f(x) = a * x^2 + b * x + c
Нужно приблизить один из корней через gradient descent по loss:
loss(x) = f(x)^2
На каждом шаге обновляйте:
x = x - lr * 2 * f(x) * (2 * a * x + b)
def gd_quadratic_root(a: float, b: float, c: float, x0: float, lr: float, steps: int) -> float:
Верните x, округленный до 6 знаков.
a = 1b = -3c = 2x0 = 0lr = 0.05steps = 1000.999995a = 1b = -5c = 6x0 = 4lr = 0.03steps = 1203.000118a = 1b = 0c = -4x0 = 3lr = 0.02steps = 802