Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KONSPEKT_LEKTsIJ_polnyy_variant.doc
Скачиваний:
30
Добавлен:
09.04.2015
Размер:
1.01 Mб
Скачать

Решение уравнений методом простой итерации

Для решения уравнения f(x)=0 его преобразуют к виду x = f1(x). Задав некоторое начальное значение корня х = хн, вычисляют значение f1(x). Это значение принимают в качестве нового значения корня х. С этим новым значением х вычисляют новое значение функции f1(x). И так продолжают до тех пор, пока разница между очередными значениями х не станет меньше заданной точности вычисления.

Пример:

Найти корень уравнения xcos(x) = 0 с точностью E.

Алгоритм решения. Преобразуем наше уравнение к виду x = cos(x). Для пояснения алгоритма введем обозначение х1 для аргумента функции cos1). Уравнение примет вид x = cos(x1). Зададим начальное значение х1 и, подставив его в уравнение, вычислим значение х. Далее приравняем значению х1 вычисленное значение х. После этого подставим новое значение х1 в уравнение и вычислим новое значение х. Опять приравняем значению х1 вычисленное значение х. И снова, подставив новое значение х1 в уравнение, вычислим новое значение х. Это будем повторять до тех пор, пока различие между очередными значениями х не станут меньше заданной точности E. Тогда полученное значение х и будет корнем заданного уравнения с точностью E.

Поясним физический смысла выполненных нами действий по итерационному решению уравнения рисунком (см. рис. 13).

Рис. 13 Решение уравнения методом простой итерации

Отметим, что решение уравнения таким методом будет найдено, если процедура итерации сходящаяся, т.е. представленная на рис. 13 спираль закручивается в точку, а не раскручивается (в этом случае цикл итераций становится бесконечным). Будет ли процедура такой итерации сходящейся, зависит от вида решаемого уравнения.

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

CLS

Input “Введите точность”, e

Input “Введите начальное значение х”, х

DO

х1 = x

x = cos(x1)

LOOP WHILE ABS(x - x1) > E

PRINT”Корень уравнения х=”; x

END

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

Кроме того, текст программы должен быть структурирован и содержать комментарии.

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

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

Исходные данные: начальное значение х = …, точность … .

№ итерации Значение корня

……………………………

Полученное значение корня уравнения х = …….

С учетом спроектированной формы выдачи результатов, применяя структурирование текста программы (т.е. делая отступы содержимого циклов, а также отступы для операторов внутри связки DOLOOP WHILE) и включая комментарии, перепишем нашу программу в виде:

CLS

REM Метод простой итерации

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