Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика. Практикум

.pdf
Скачиваний:
1
Добавлен:
24.11.2025
Размер:
5.18 Mб
Скачать

вычисляем значения функции на границах отрезка f(a2), f(b2) (E5, F5);

вычисляем приближение корня x2 на отрезке [a2; b2] по форму-

ле x2

b2

f (a2 ) a2

f (b2 )

(H5);

 

f (a2 ) f (b2 )

 

 

 

вычисляем значения функции в точке x2 f(x2) (G5);

вычисляем значение погрешности по формуле x2 x1 (I5)

(рис. 4.30).

Рис. 4.30

Шаг 3. Итерации вычислений продолжаем до тех пор, пока не будет получено значение точности, меньшее заданного. Для этого выделяем диапазон B5 : I5. Растягиваем его вниз до тех пор, пока значение точности (столбец I) не станет меньше заданного (0,01) (рис. 4.31).

Рис. 4.31

Таким образом, из рисунка видно, что для поиска корня уравнения с заданной точностью достаточно восьми итераций и значение корня на заданном отрезке составляет 2,362 (значение x8).

Иллюстрация решения приведена на рис. 4.32. Как видно из рисунка, проведенная хорда для каждой итерации стремится к искомому корню уравнения.

191

20

Y

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

x2=1,931

x4=2,260

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x6=2,343

 

 

X

0

 

 

 

 

 

 

 

 

1

1,5

2

2,5

3

3,5

4

-10

 

x1=0,558

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x3=2,147

 

 

 

 

 

-20

 

 

 

x5=2,316

 

 

 

-30

 

Функция f(x)

 

Хорда 1-й итерации

 

 

 

 

 

Хорда 2-й итерации

 

Хорда 3-й итерации

 

 

 

-40

 

Хорда 4-й итерации

 

Хорда 5-й итерации

 

 

 

 

 

 

 

 

 

 

 

Хорда 6-й итерации

 

 

 

 

 

-50

 

 

 

 

 

 

 

 

 

 

 

Рис. 4.32

 

 

 

 

 

4.2.3. Задача решения нелинейного уравнения

 

 

 

методом касательных

 

 

 

Задача 4.4. Разработать алгоритм решения нелинейного уравне-

ния ex2 x3 10 0 на отрезке [1, 4] методом касательных с точностью 0,01. Положение корня в плоскости XY проиллюстрировать графически.

Алгоритм решения

Предварительное табулирование. Найдем значения функции f (x) ex2 x3 10 на отрезке [1, 4], используя шаг изменения

переменной х, равный 0,2 (см. рис. 4.16). Построим график функции (см. рис. 4.17). Найдем первую и вторую производные функции f(x) по формулам

f

(x)

1

e

x 2

3x

2

,

(4.4)

2

 

 

 

 

 

 

 

 

 

 

 

 

 

f

(x)

 

1

e

x 2

6x .

(4.5)

4

 

 

 

 

 

 

 

 

 

 

192

В дальнейшем при вычислении производных будем использовать полученные формулы.

Алгоритм нахождения корня уравнения

Шаг 1. Первая итерация (результаты представлены на рис. 4.35):

вводим номер итерации (i = 1) (B4);

вводим значения границ отрезка (a1 = 1 и b1 = 4) (C4, D4);

вычисляем значения функции на границах отрезка f(a1), f(b1)

(E4, F4);

вычисляем значение второй производной в точке a1: f (a1) по

формуле (4.5) (G4) (рис. 4.33);

Рис. 4.33

– вычисляем приближение корня x1 на отрезке [a1; b1]; для этого необходимо оценить выражение f (a) f (a1) : если f (a) f (a1) ,

то касательная проводится к точке а и приближение x1 вычисляется по

формуле

x

a

f (a)

; если f (a) f

(a )

, то касательная прово-

 

 

 

 

1

 

f

(a)

 

1

 

 

 

 

 

 

 

 

дится к

точке

b

и

приближение

x1

вычисляется по формуле

x b

 

f (b)

;

 

 

 

 

 

 

 

 

 

 

 

 

1

 

f (b)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (b) , f (a) – это значения производной в точке b и a (G4), ко-

торые определяются по формуле (4.4) с использованием функции ЕCЛИ(), а именно: для ячейки H4 вводится формула

=ЕСЛИ(E4*G4>0;C4-E4/(EXP(C4/2)/2 – 3*C4*C4);D4-F4/(EXP(D4/2)/2 –

– 3*D4*D4)) или с помощью диалогового окна (рис. 4.34);

193

Рис. 4.34

– вычисляем значение функции в точке x1: f (x1) (I4). (рис. 4.35).

Рис. 4.35

Шаг 2. Вторая итерация (результаты представлены на рис. 4.40):

– вводим номер итерации (i = 2) (B5);

– определяем левую границу нового отрезка a2 (C5):

если f(a1) f(x1) < 0, то a2 = a1, иначе а2 = x1 – для этого для ячейки C5 в строке формул вводится формула с использованием функции ЕCЛИ(), а именно, =ЕСЛИ(E4*I4<0;C4;H4), или с помощью диалогового окна (рис. 4.36);

– определяем правую границу нового отрезка b2 (D6): если f(a1) f(х1) < 0, то b2 = x1, иначе b2 = b1 – аналогично предыдущему пункту в строке формул вводится формула с использованием функции ЕCЛИ(), а именно, =ЕСЛИ(E4*I4<0;H4;D4), или с помощью диалогового окна (рис. 4.37); в результате получим значения, представленные на рис. 4.38;

194

Рис. 4.36

Рис. 4.37

Рис. 4.38

195

– вычисляем значения функции на границах отрезка f(a2), f(b2) (E5, F5); значение второй производной в точке a2: f (a2 ) (G5),

приближение корня x2 на отрезке [a2; b2] (H5); значение функции в точке х2: f(x2) (I5) – для этого выделяем диапазон E4 : I4 и растягиваем маркер заполнения вниз на одну строку (рис. 4.39);

Рис. 4.39

– вычисляем значение точности по формуле x2 x1 (J5) (рис. 4.40).

Рис. 4.40

Шаг 3. Итерации вычислений продолжаем до тех пор, пока не будет достигнута заданная точность. Для этого выделяем диапазон B5 : J5 и растягиваем его вниз до тех пор, пока значение точности (столбец J) не станет меньше заданной (0,01) (рис. 4.41).

Рис. 4.41

196

Таким образом, как видно из рис. 4.41, для поиска корня доста-

точно четырех итераций и значение x = 2,367.

 

 

 

Графическая иллюстрация решения представлена на рис. 4.42.

15

 

Y

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

x2=2,477

x1=2,948

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

-5

1

1,5

2

2,5

3

3,5

4

 

 

 

 

x3=2,367

 

 

 

-15

 

 

 

 

 

 

 

-25

 

 

 

 

 

 

 

-35

 

 

 

 

 

 

 

 

 

 

Функция f(x)

 

 

 

-45

 

 

Касательная 1-й итерации

 

 

 

 

 

 

 

 

 

 

 

 

 

Касательная 2-й итерации

 

 

 

-55

 

 

Касательная 3-й итерации

 

 

 

 

 

 

 

Рис. 4.42

 

 

 

Как видно из рисунка, проведение касательной на каждой итера-

ции сужает рассматриваемый отрезок и каждое новое приближение

корня приближается к искомому значению.

 

 

4.2.4. Задача решения нелинейного уравнения методом простых итераций

Задача 4.5. Разработать алгоритм решения нелинейного уравне-

ния ex2 x3 10 0 на отрезке [1, 4] методом простых итераций с погрешностью 0,01.

 

 

 

Алгоритм решения

 

 

 

 

Представим

исходное

уравнение

в следующем

виде:

x 3 ex 2

10 . Поскольку выполняются следующие два условия:

1) функция

x)

3 ex 2

10 для всех x

[1, 4]

удовлетворяет усло-

вию 3 e1 2

10

x)

e4 2

10 , следовательно,

2,26

x)

,6 ;

197

ex2

2) производная x) ,

6 3 (10 ex2 )2

то можно использовать метод простых итераций, по которому следующее приближения корня xi+1 вычисляется по формуле xi 1 i ) .

Шаг 1. Первая итерация:

введем номер итерации (i = 1) (B3);

введем начальное приближение к корню уравнения (x1 = 1) (C3) (рис. 4.43).

Рис. 4.43

Шаг 2. Вторая итерация:

– введем номер итерации (i = 2) (B4);

– вычислим следующее приближение к корню уравнения

( x

2

x ) 3

ex1 2 10 ) (C4) (рис. 4.44);

 

1

 

 

 

 

– вычислим

точность приближения по формуле

x2 x1

(D4)

(рис. 4.45).

 

 

 

Рис. 4.44

Рис. 4.45

Шаг 3. Повторяем действия шага 2, пока не будет достигнута заданная точность. Для этого необходимо выделить диапазон ячеек B4 : D4 (рис. 4.46) и растянуть маркер заполнения вниз (рис. 4.47).

198

Рис. 4.46

Рис. 4.47

Таким образом, как видно из рис. 4.47, для поиска корня достаточно четырех итераций и значение корня x = 2,366.

4.2.5. Задача решения нелинейного уравнения

спомощью надстройки «Поиск решения»

Вэтом разделе будут использованы возможности надстройки MS EXCEL Поиск решения. Они доступны с помощью команды

Сервис - Поиск решения… Если этой команды в меню нет, ее необходимо установить. Для этого необходимо проделать следующее:

1. Выбрать пункт меню Сервис Надстройки…

2.Установить в окне «Доступные надстройки» флажок для надстройки Поиск решения.

3.Далее возможны три ситуации:

надстройка установлена в MS EXCEL, но не включена; в этом случае после нажатия кнопки ОК надстройка будет включена в

MS EXCEL;

надстройка не установлена в MS EXCEL, но находится в стандартных установочных каталогах Microsoft Office; в этом случае после нажатия кнопки ОК надстройка будет установлена и включена в состав MS EXCEL;

надстройка не установлена в MS EXCEL, и ее нет в стандартных установочных каталогах Microsoft Office; в этом случае после нажатия кнопки ОК необходимо указать путь к установочному каталогу MS EXCEL на диске или другом носителе.

Можно также установить надстройку с помощью обращения к пункту Установка и удаление программ на панели управления

Windows, для этого необходимо выбрать действие Изменить для

199

программы MS EXCEL или Microsoft Office и затем, следуя инструкциям в окне пошаговой установки, установить надстройку По-

иск решения, указав для нее опцию запускать с моего компьютера всегда.

Алгоритм работы с надстройкой Поиск решения

В диалоговом окне Поиск решения есть три основных параметра:

1.«Установить целевую ячейку»;

2.«Изменяя ячейки»;

3.«Ограничения».

Сначала нужно заполнить поле Установить целевую ячейку. Целевая ячейка связана с другими ячейками этого рабочего листа с помощью формул, в ней происходит оптимизация результата. Можно выбрать поиск наименьшего или наибольшего значения для целевой ячейки или же установить конкретное значение.

Второй важный параметр — это параметр Изменяя ячейки. Изменяемые ячейки — это те ячейки, значения в которых будут изменяться для того, чтобы оптимизировать результат в целевой ячейке. Для поиска решения можно указать до 200 изменяемых ячеек. К изменяемым ячейкам предъявляются два основных требования. Они не должны содержать формул, и изменение их значений должно отражаться на изменении результата в целевой ячейке. Другими словами, целевая ячейка зависима от изменяемых ячеек.

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

Задача 4.6. Разработать алгоритм решения нелинейного уравнения f (x) ex2 x3 10 0 на отрезке [–10, 4] с помощью надстройки MS EXCEL Поиск решения.

Алгоритм решения

Предварительное табулирование. Построим табулированную функцию f (x) ex2 x3 10, используя шаг изменения переменной х, равный 1 (рис. 4.48).

200