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

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

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

Рис. 4.13

Завершаем действие с функцией МУМНОЖ, нажав одновременно комбинацию клавиш Ctrl+Shift+Enter (рис. 4.14).

Рис. 4.14

В результате решения системы линейных уравнений (4.3) с помощью матричных операций получены значения неизвестных:

х1 = 22,46, х2 = 23,9, х3 = 10,74, х4 = 26,94 (см. рис. 4.14).

Шаг 7. Проверим правильность решения системы линейных уравнений (4.3) с помощью подстановки, т. е. запишем каждое уравнение и системы в ячейки, указывая координаты ячеек с соответствующими значениями элементов матрицы А4 4 a11, a12, …, a44 и элементов матрицы-вектора Х4 1 х1, х2, х3, х4 (рис. 4.15).

181

В результате проведенной проверки получен вектор свободных членов системы уравнений (4.3), аналогичный вектору С4 1, т. е. система уравнений (4.3) решена правильно (см. рис. 4.15).

Рис. 4.15

4.2.Решение нелинейных уравнений и систем

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

методом дихотомии

Задача 4.2. Решить нелинейное уравнение f (x) ex2 x3 10 на

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

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

Обозначим отрезок, на котором будет производиться поиск корня, как [a, b]. Суть метода состоит в циклическом выполнении двух операций:

1)уточнение отрезка существования корня уравнения (выбор половины отрезка [a, b], который содержит корень уравнения);

2)выбор нового отрезка до тех пор, пока допустимая погрешность вычисления корня не станет меньшей либо равной заданной точности (0,01).

182

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

ременной х, равный 0,2, т. е. проведем предварительное табулирование уравнения (рис. 4.16). Как видно из рисунка, заданная функция меняет знак на отрезке [1, 4] и, значит, можно найти корень функции f(x) на этом отрезке.

Построим график функции f(x) с помощью функции «Мастер диаграмм». Для этого выделим диапазон данных B4 : C19, активи-

зируем функцию «Мастер диаграмм», выберем тип «Точечная диаграмма со значениями, соединенными сглаживающими линиями без маркеров», зададим значения Х, имена рядам данных и нажимаем кнопку «Готово». В результате появится график табулированной функции f(x) на отрезке [1, 4] (рис. 4.17).

Рис. 4.16

183

20 Y

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

b=4

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

0,5

1

1,5

2

2,5

3

3,5

4

4,5

-10

 

 

a=1

 

 

 

 

 

 

 

 

-20

-30

-40

-50

Рис. 4.17

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

Для поиска корня уравнения используются итерационные вычисления – деление выбранного отрезка пополам.

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

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

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

вычисляем значение координаты середины отрезка – х1 = (a1 +

+b1)/2 (E4);

вычисляем f(a1), f(b1), f(х1) (F4, G4, H4);

вычисляем значение точности по формуле |b1 a1|/2 (I4).

Рис. 4.18

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

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

определяем левую границу нового отрезка a2 (С5) по алгорит-

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

184

– определяем правую границу нового отрезка b2 (D5) по алго-

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

(рис. 4.20);

– вычисляем значения х2, f(a2), f(b2), f(х2), точность второй итерации, для этого выделяем диапазон E4 : I4 и растягиваем его на один ряд вниз, в результате в ячейках E5 : I5 появятся значения второй итерации (рис. 4.21).

Рис. 4.19

185

Рис. 4.20

Рис. 4.21

Шаг 3. Итерации вычислений продолжаем до тех пор, пока не будет получена заданная точность (0,01). Для этого необходимо выделить диапазон B5 : I5 (рис. 4.22) и скопировать или растянуть его в нижние строки до тех пор, пока значение точности не станет меньше заданного значения (0,01) (рис. 4.23). Из рис. 4.23 видно, что на десятой итерации значение точности станет равным 0,006 < 0,01 и, следовательно, корень уравнения равен х = 2,365 (ячейка Е12).

Рис. 4.22

186

Рис. 4.23

В табл. 4.1 приведена иллюстрация решения задачи.

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 4.1

Итерация

Приближение к корню

 

 

 

 

График функции

 

 

1

2

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

20

 

Y

 

 

 

 

x1=2,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Первая

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1 = 2,5

-10 0

0,5 1

 

1,5

2 2,5

3

3,5 4

4,5

итерация

-20

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-30

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-40

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-50

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a=1

 

 

 

 

 

b=4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Окончание табл. 4.1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

2

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

12

 

Y

 

 

 

 

x2=1,75

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

Вторая

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

x2 = 1,75

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

итерация

 

 

 

 

 

 

 

 

 

 

 

 

X

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-2

0

 

0,5

 

1

1,5

2

2,5

3

 

 

 

-4

 

 

 

 

 

a=1

 

 

b=2,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 Y

 

 

 

x5=2,406

 

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Пятая

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x5 = 2,406

 

-1 2,3

2,35

 

2,4

2,45

 

2,5

 

2,55

итерация

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-3

 

a=2,313

 

 

 

 

b=2,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

187

 

 

 

Y

 

 

 

 

 

 

 

 

 

 

 

0,15

 

 

 

 

 

 

 

 

 

 

 

0,1

 

 

 

x9=2,365

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Девятая

x9

= 2,365

0,05

 

 

 

 

 

 

 

 

итерация

 

 

 

 

 

 

 

 

X

 

 

0

 

 

 

 

 

 

 

 

 

 

2,358

2,36

2,362

2,364

2,366

2,368

2,37

2,372

 

 

 

-0,05

 

 

 

 

 

 

 

 

 

 

 

-0,1

a=2,359

 

 

 

 

b=2,371

4.2.2. Задача решения нелинейного уравнения методом хорд

Задача 4.3. Разработать алгоритм решения нелинейного уравнения f (x) ex2 x3 10 0 на отрезке [1, 4] методом хорд с точно-

стью 0,01.

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

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

переменной х, равный 0,2 (см. рис. 4.16). Построим график функ-

ции (см. рис. 4.17).

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

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

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

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

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

(E4, F4) (рис. 4.24);

Рис. 4.24

188

– вычисляем приближение корня x1 на отрезке [a1; b1] по форму-

ле x1

b1 f (a1)

a1

f (b1)

(H4) (рис. 4.25);

f (a1)

f (b1)

 

 

Рис. 4.25

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

Рис. 4.26

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

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

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

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

189

Рис. 4.27

– определяем правую границу нового отрезка b2 (D5) по алгоритму: если f(a1) f(х1) < 0, то b2 = x1, иначе b2 = b1 – аналогично предыдущему пункту (рис. 4.28); значения границ отрезка на второй итерации приведены на рис. 4.29;

Рис. 4.28

Рис. 4.29

190