"Методы приближенных вычислений. Численные методы решения уравнений" Численный метод половинного деления. Составить программу нахождения корня уравнения х3-cosx=0 методом деления пополам числового отрезка аргумента.
Вот пример программы на Python для нахождения корня уравнения х^3 - cos(x) = 0 методом деления пополам на числовом отрезке аргумента:
import math def f(x): return x**3 - math.cos(x) def bisection_method(a, b, tol): if f(a) * f(b) > 0: print("Условие существования корня на отрезке не выполняется") return None while (b - a) / 2 > tol: c = (a + b) / 2 if f(c) == 0: return c elif f(a) * f(c) < 0: b = c else: a = c return (a + b) / 2 a = 0 b = 1 tol = 0.0001 root = bisection_method(a, b, tol) if root is not None: print("Корень уравнения х^3 - cos(x) = 0 на отрезке [{}, {}] равен {:.5f}".format(a, b, root))
В данной программе для функции x^3 - cos(x) заданы начальные значения отрезка [a, b] и точность tol. Алгоритм метода деления пополам выполняется до тех пор, пока не достигнется заданная точность. Если на заданном отрезке существует корень уравнения, то программа выводит его значение.
Вот пример программы на Python для нахождения корня уравнения х^3 - cos(x) = 0 методом деления пополам на числовом отрезке аргумента:
import mathdef f(x):
return x**3 - math.cos(x)
def bisection_method(a, b, tol):
if f(a) * f(b) > 0:
print("Условие существования корня на отрезке не выполняется")
return None
while (b - a) / 2 > tol:
c = (a + b) / 2
if f(c) == 0:
return c
elif f(a) * f(c) < 0:
b = c
else:
a = c
return (a + b) / 2
a = 0
b = 1
tol = 0.0001
root = bisection_method(a, b, tol)
if root is not None:
print("Корень уравнения х^3 - cos(x) = 0 на отрезке [{}, {}] равен {:.5f}".format(a, b, root))
В данной программе для функции x^3 - cos(x) заданы начальные значения отрезка [a, b] и точность tol. Алгоритм метода деления пополам выполняется до тех пор, пока не достигнется заданная точность. Если на заданном отрезке существует корень уравнения, то программа выводит его значение.