Существуют различные методы решения уравнения f(x) = 0. Из простых методов назовем метод Ньютона, метод хорд и метод деления пополам. Последние два метода характеризуются медленной сходимостью, но реализация их проста.
Для этих двух методов существенно, чтобы функция была непрерывна и ограничена в заданном интервале [a, b], внутри которого ищется корень. Предполагается также, что f(a) и f(b) имеют разные знаки.
Рассмотрим подробнее один из этих методов, а именно метод деления пополам, так как по сравнению с методом хорд данный метод характеризуется большей сходимостью. Этот метод состоит в выполнении итераций, начиная с отрезка [a, b] на оси абсцисс на котором функция меняет знак, т.е. имеется точка пересечения графика функции с осью х(рисунок 1).
При заданной точности e метод состоит из таких шагов:
1. Вычислить f(a) и f(b).
2. Положить c = (a + b)/2 и вычислить f(с).
3. Если f(с) = 0, то принять в качестве решения значение с,вывести его и прекратить вычисления, иначе перейти к шагу 4.
4. Если f(c) и f(a) имеют одинаковые знаки, то заменить a на c.
5. Если f(c) и f(b) имеют одинаковые знаки, то заменить b на c.
6. Если |b - a| £ e (e - заданная погрешность вычислений), то принять в качестве решения последнее значение с,вывести егоипрекратить вычисления, в противном случае перейти к шагу 2.
Для определения значения конца отрезка b, на котором функция меняет знак, при заданном значении начала отрезка а используют следующий итерационный алгоритм:
1) Задают начальное значение х = a + h. Здесь h – это заданный шаг изменения х.
2) Вычислить значения f(a) и f(x).
Если f(a) и f(x) имеют разные знаки, то принять b = x и прекратить вычисления, иначе принять x = x+ h и перейти к шагу 2.