![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Метод деления отрезка пополам
Все вышеизложенные методы могут работать, если функция f (x) из (1) является непрерывной и дифференцируемой вблизи искомого корня, в противном случае решение не гарантируется. Данный метод может быть использован даже для разрывных функций. Его алгоритм реализовывается согласно следующей рекуррентной последовательности: для x *Î [a, b]; x 0 = a; x 1 = b, находится x 2 = (a+b)/2. Очередная точка x 3 выбирается как середина того из смежных с x 2 интервалов [ x 0, x 2] или [ x 2, x 1], на котором находится корень. В результате получается следующий алгоритм метода деления отрезка пополам: 1) вычисляем y 0 = f (x 0); 2) вычисляем 3) если 4) если 5) вычисляем За одно вычисление функции погрешность уменьшается вдвое, т.е. скорость сходимости невелика, однако метод устойчив к ошибкам округления и всегда сходится. Немного подкорректировав алгоритм (13), его более наглядно можно представить в виде блок-схемы:
|