Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
informatika (2).docx
Скачиваний:
49
Добавлен:
16.04.2015
Размер:
653.64 Кб
Скачать
  1. 19.Метод половинного деления

  2. Его ещё называют методом дихотомии. Этот метод решения уравнений отличается от выше рассмотренных методов тем, что для него не требуется выполнения условия, что первая и вторая производная сохраняют знак на интервале [a, b]. Метод половинного деления сходится для любых непрерывных функций f(x) в том числе не дифференцируемых.

  3. Разделим отрезок [a, b] пополам точкой. Если (что практически наиболее вероятно), то возможны два случая: либо f(x) меняет знак на отрезке [a, c] (Рис. 3.8), либо на отрезке [c, b] (Рис. 3.9)

  4. Выбирая в каждом случае тот отрезок, на котором функция меняет знак, и продолжая процесс половинного деления дальше, можно дойти до сколь угодно малого отрезка, содержащего корень уравнения.

  5. Пример 4. Уравнение 5x - 6x -3 = 0 имеет единственный корень на отрезке [1;2]. Решить это уравнение методом половинного деления.

  6. Решение: Программа на языке Паскаль может быть такой:

  1. program mdp;

  2. function f(x: real): real;

  3. begin

  4. f:=exp(x*ln(5))-6*x-3;

  5. end;

  6. var

  7. a, b, e, c, x: real;

  8. begin

  9. a:=1;

  10. b:=2;

  11. write ('e=');

  12. read(e);

  13. c:=(a+b)/2;

  14. while abs(b-a)>e do

  15. begin

  16. if f(a)*f(c)<0 then

  17. b:=c

  18. else

  19. a:=c;

  20. c:=(a+b)/2;

  21. end;

  22. x:=(a+b)/2;

  23. writeln ('x=',x:3:3,' f(x)=',f(x):4:4);

  24. end.

  25. Результат выполнения программы:

  26. e=0.001 x=1.562 f(x)=-0.0047

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]