Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Метод деления отрезка пополам



Допустим, что мы нашли отрезок , в котором расположено искомое значение корня , т.е. .

Пусть для определенности , (рис. 1.1). В качестве начального приближения корня принимается середина этого отрезка, т.е. . Далее исследуем значение функции на концах отрезков и . Тот из них, на концах которого принимает значения разных знаков, содержит искомый корень. Поэтому его принимаем в качестве нового отрезка. Вторую половину отрезка отбрасываем. В качестве первой итерации корня принимаем середину нового отрезка и т. д.

Рис. 1.1 Метод деления отрезка пополам.

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

Пример 1.1. Найти решение уравнения c точностью методом деления отрезка пополам.

 
Рис. 1.2. Графический метод изоляции корня уравнения

Решение. Уравнение представим в виде . Корнем данного уравнения является -координата точки пересечения графиков функций и (рис.1.2). Искомый корень находится между точками и . Функция на концах отрезка принимает значения разных знаков и .

Начальное приближение: , , .

; ; .

1-е приближение: , , .

Погрешность .

; ; .

Корень находится в интервале .

2-е приближение: , , .

Погрешность .

; ; .

Корень находится в интервале .

7-е приближение: , , .

Погрешность .

Приближенным решением данного уравнения является .

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

  Исходные данные Результаты
  A B C D E
  a b e x f(x)
      0,001 0,682617 0,000694
Function F(x) F = x ^ 3 + x - 1 End Function Sub program1() a = Cells(2, 1) b = Cells(2, 2) e = Cells(2, 3) If F(a) * F(b) > 0 Then MsgBox "F(a) и F(b) одного знака" End End If 1 x = (a + b) / 2 If F(a) * F(x) < 0 Then b = x Else a = x If (b - a) >= e Then GoTo 1 Cells(2, 4) = x Cells(2, 5) = F(x) End Sub
Рис. 1.3. Пример программы нахождения корней уравнения методом деления отрезка пополам на языке Visual Basic for Application.

Пример 1.2. Найти решение уравнения c точностью методом деления отрезка пополам с помощью программы Excel.

Найдем интервал, содержащий единственный корень уравнения. Для этого необходимо построить таблицу или график функции .

1) Введем в ячейки A2, A3, A4, … значения переменной .

2) Введем в ячейку B2 формулу =A2^3+A2–1.

3) Скопируем формулу и вставим в остальные ячейки столбца B.

4) Найдем соседние ячейки, в которых значения функции имеют разные знаки (рис. 1.4 а). Соответствующие значения переменной дают границы интервала, содержащего корень.

5) Для построения графика вызываем мастер диаграмм. Выбираем тип диаграммы «точечная» - точечная диаграмма со значениями, соединенными сглаживающими линиями.

6) Границы интервала, содержащего корень, соответствуют значениям шкалы, между которыми линия графика пересекает горизонтальную ось (рис. 1.4 б)

a) б)
 
  A B
  x F(x)
  -3 -31
  -2 -11
  -1 -3
    -1
     
     
     
Рис. 1.4. Изоляция корня уравнения в Excel с помощью: а) таблицы; б) графика. Искомый корень находится в интервале [0; 1].

Продолжаем решение на новом листе (рис. 1.5).

1) Ввести в ячейки A1 – G1 заголовки столбцов.

2) В ячейку A2 – значение левой границы интервала

3) В ячейку B2 – значение правой границы интервала

4) В ячейку C2 – формулу середины отрезка =(A2+B2)/2

5) В ячейку D2 – формулу погрешности =B2–A2

6) В ячейку E2 – формулу функции =A2^3+A2-1

7) Скопировать формулу из E2 в ячейки F2 и G2. Строка 2 теперь содержит результаты начального приближения.

8) В ячейку A3 – формулу =ЕСЛИ(E2*G2<0;A2;C2)

9) В ячейку B3 – формулу =ЕСЛИ(E2*G2<0;C2;B2)

10) Выделить ячейки C2:G2 и скопировать формулы в соседние ячейки C3:G3 при помощи маркера заполнения (небольшой черный квадрат в правом нижнем углу выделенного блока). Строка 3 теперь содержит результаты первого приближения.

11) Выделить ячейки A3:G3 и скопировать формулы в соседние ячейки расположенных ниже строк A4:G4, A5:G5, и т.д. при помощи маркера заполнения. Каждая новая строка содержит результаты очередного приближения.

12) В столбце С найти значение корня, соответствующее заданной точности.

Приближенное решение данного уравнения содержится в ячейке С9 (погрешность в ячейке D9).





Дата публикования: 2015-03-29; Прочитано: 1711 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...