Вторая пачка часть 73
При заданной точности ? деление пополам пр¬¬¬¬дол¬жа¬ют до тех пор, пока длина отрезка не стବ¬¬¬нет меньше ??, тогда координата середины псле䬬¬¬него на鬬¬денного от¬резка и есть значение кор¬¬ня тре¬бу¬е¬мой точ¬ности.
Метод дихотомии — простой и надежный ме¬тод п¬ис¬ка простого корня уравнения F(х) = 0. Он схо¬дит¬ся для лю¬бых непрерывных фунꬬций F(х), в том чис¬ле и не¬-диф¬фе¬рен¬ци¬ру¬е¬мых. Недостатки метода:
1) проблема определения отрезка, на ко¬то¬ром фунꬬция ме¬няет свой знак (как правило, это отдельная вы¬чис¬ли¬тель¬ная задача, на¬и¬бо¬лее слож¬ная и трудоемкая час¬ть ре¬ше¬ния);
2) если корней на выделенном отрезке не-сколь¬ко, то нельзя заранее сказать, к какому из них со鬬¬дет¬ся про¬цесс;
3) не применим к корням четной крат¬нос¬ти;
4) для корней нечетной, но высокой кратности м嬬¬тод неустойчив, дает большие ошибки;
5) медленно сходится. Для достижения ? не¬-оᬬхо¬димо выполнить N итераций , т.е. для по¬лу-ч嬬ния 3 верных цифр (? = 0.0005) на¬до вы-полнить около 10 ит嬬раций, ес¬ли отрезок имеет единичную длину.
Программа, по которой можно вычислить кор¬ни м嬬¬¬¬тодом дихотомии, построена по сле¬ду-ю¬щ嬬му ал¬го¬рит¬му:
Шаг 1. Определить входные параметры А, В, ЕРS.
Шаг 2. Присвоить: А1 ??А; В1 ??В; К ? 0.
Шаг 3. Присвоить: Х1 ? А1; Х2 ? В1; К ? К + 1; Х3 ??(В1+А1)/2.
Шаг 4. Если F(Х1) ? F(Х3) < 0, то перейти на шаг 5 ина¬че на шаг 7.
Шаг 5. Присвоить: В1 ? Х3.
Шаг 6. Если | А1 - В1| < ЕРS, то перейти на шаг 10 инବче на шаг 3.
Шаг 7. Если F(Х2) ? F(Х3) < 0, то перейти на шаг 8 инବ¬че на шаг 11.
Шаг 8. Присвоить: А1 ??Х3.
Шаг 9. Перейти на шаг 6.
Шаг 10. Печать: Х3 - корень уравнения; К - ко¬ли¬чес¬тво ит嬬¬раций.
Шаг 11. | А1 - В1| / 2 - погрешность решения.
Шаг 12. Конец программы.
Это наиболее простое решение задачи, но не сବмое эф¬фективное. Эффективность можно по¬вы¬сить, если:
1) заменить произведения F(х1)?F(х3) и F(х2)?F(х3) на ис¬¬поль¬зование встро¬ен¬ной функции sign(х, у)
Индекс
Элементарные функции
Линейные уравнения
Нелинейные уравнения
Случайные числа