Составить программу для решения нелинейного уравнения

Составить программу для решения нелинейного уравнения

Составить программу на языке программирования С++ и блок-схему для решения следующей задачи: уточнить приближенное значение корня нелинейного уравнения f(x) = 0 на заданном отрезке [a,b] методом половинного деления (дихотомии) с точностью ε = 0.001.

Уравнение имеет вид: x 3 — 9x 2 + 20x – 11=0

Отрезок, на котором осуществляется поиск корня: [0; 1]

Видео:Метод Ньютона (метод касательных) Пример РешенияСкачать

Метод Ньютона (метод касательных) Пример Решения

Блок-схема алгоритма поиска корня уравнения методом половинного деления (дихотомии)

Разработаем алгоритм программы поика решения уравнения на заданном отрезке в виде блок-схемы:

Составить программу для решения нелинейного уравнения

Видео:10 Метод Ньютона (Метод касательных) C++ Численные методы решения нелинейного уравненияСкачать

10 Метод Ньютона (Метод касательных) C++ Численные методы решения нелинейного уравнения

Текст программы решения задачи на С++

В среде программирования Borland C++ 7.0 вводим текст программы на Си ++:

#include
#include
// функция для вычисления f(х)
float f(float z)
<
return pow(z,3)+6*pow(z,2)+6*z-7;//возвращаемое значение
>

// главная функция
void main()
<
float a=-3.0, b=2.0, e=0.001, x;// объявление переменных
while (fabs(a-b)>=e) // цикл
<
// проверка на разные знаки по концам отрезка
if((f(a)>0&&f((a+b)/2) 0))
b=(a+b)/2;
else
if ((f((a+b)/2)>0&&f(b) 0))
a=(a+b)/2;
else
<
printf(«! Net kornej !»);
return;
getch();
>
>

x=(a+b)/2;// вычисление х после завершения цикла
printf(«x=%f F(x)=%f |a-b|=%f»,x,f(x),fabs(a-b)); // вывод результатов
getch();
>

Нажимаем клавиши CTRL+F9 для компиляции и запуска на выполнение программы. Получаем корень уравнения x≈0,834 :

Составить программу для решения нелинейного уравнения

Программа начинается с директив препроцессора, начинающихся с символа #, которые дают указание препроцессору подключить к программе заголовочные файлы с описанием тех или иных библиотечных функций. В данном случае подключается заголовочный файл stdio.h с описанием функций ввода-вывода, заголовочный файл math.h с описанием математических функций и заголовочный файл conio.h с описанием функции ожидания нажатия клавиши getch().

Программа состоит из двух функций: пользовательской функции f(x) и обязательной функции main(). Функция main() не возвращает никаких значений и поэтому она объявляется с ключевым словом void. В отличие от функции main(), функция f(x) возвращает вещественное значение и объявляется с ключевым словом float. Тела функций являются блоками и поэтому ограничены фигурными скобками.

В теле функции main() объявляются вещественные переменные a, b, e, х.
Далее используется оператор цикла while, в котором применяются условные операторы:
if (выражение) оператор 1; else оператор 2; которые позволяют проверить разные ли знаки у концов отрезка.
Использование вышеуказанной библиотечной функции printf() дает возможность вывести на стандартное устройство вывода (монитор) сообщение об отсутствии корней или сообщение с значением корня, значением функции в этой точке и модуль разности концов отрезка.
Тело функции main() зак¬рывается фигурной скобкой. На этом программа заканчивается.

Видео:Решение нелинейного уравнения методом простых итераций (программа)Скачать

Решение нелинейного уравнения методом простых итераций (программа)

Лабораторная работа: Итерационные методы решения нелинейных уравнений

Видео:Решение нелинейного уравнения методом половинного деления (программа)Скачать

Решение нелинейного уравнения методом половинного деления (программа)

ЛАБОРАТОРНАЯ РАБОТА №1-2.

Видео:Метод простых итераций пример решения нелинейных уравненийСкачать

Метод простых итераций пример решения нелинейных уравнений

ИТЕРАЦИОННЫЕ МЕТОДЫ РЕШЕНИЯ НЕЛИНЕЙНЫХ УРАВНЕНИЙ.

Цель работы: научиться решать нелинейные уравнения методом простых итераций, методом Ньютона и модифицированным методом Ньютона с помощью ЭВМ.

1. Изучить метод простых итераций, метод Ньютона и модифицированный метод Ньютона для решения нелинейных уравнений.

2. На конкретном примере усвоить порядок решения нелинейных уравнений с помощью ЭВМ указанными методами.

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

4. Изменить Составить программу для решения нелинейного уравненияи снова решить задачу. Сделать вывод о точности полученных результатов.

5. Составить отчет о проделанной работе.

ПРИМЕР ВЫПОЛНЕНИЯ РАБОТЫ

1. Доказать графическим и аналитическим методами существование единственного корня нелинейного уравнения

Составить программу для решения нелинейного уравнения(1)

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

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

3. Составить программу (программы) на любом языке программирования, реализующие построенные итерационные процессы.

1. Докажем графическим методом единственность корня нелинейного уравнения (1). Из графика функции Составить программу для решения нелинейного уравненияна Рис.1 видно, что функция Составить программу для решения нелинейного уравненияпересекает ось Составить программу для решения нелинейного уравненияв одной точке, являющейся приближенным значением корня нелинейного уравнения (1). Но так как данная функция имеет сложный аналитический вид, то преобразуем уравнение (1) к виду Составить программу для решения нелинейного уравненияи построим два графика Составить программу для решения нелинейного уравненияи Составить программу для решения нелинейного уравнения, имеющих более простой аналитический вид (Рис.2). Абсцисса точки пересечения графиков является приближенным значением корня. Заметим, что графический метод показывает количество корней исходного уравнения, но не доказывает единственность корня на отрезке.

Название: Итерационные методы решения нелинейных уравнений
Раздел: Рефераты по информатике, программированию
Тип: лабораторная работа Добавлен 09:43:21 25 июня 2008 Похожие работы
Просмотров: 2747 Комментариев: 21 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно Скачать
Составить программу для решения нелинейного уравнения

Рис.1

Аналитический метод. Функция Составить программу для решения нелинейного уравнениянепрерывна на отрезке Составить программу для решения нелинейного уравнения, имеет на концах отрезка разные знаки (Составить программу для решения нелинейного уравнения), а производная функции Составить программу для решения нелинейного уравненияне меняет знак на отрезке (Составить программу для решения нелинейного уравнения). Следовательно, нелинейное уравнение (1) имеет на указанном отрезке единственный корень.

2. Метод простых итераций. Для построения рабочей формулы перепишем уравнение (1) в виде: Составить программу для решения нелинейного уравнения. Проверим, выполняется ли достаточное условие сходимости на отрезке:

Составить программу для решения нелинейного уравнения(2)

Если условие выполняется, то итерационный процесс строится по формуле

Составить программу для решения нелинейного уравнения

Заметим, что в точке Составить программу для решения нелинейного уравненияиз отрезка Составить программу для решения нелинейного уравнения, значение Составить программу для решения нелинейного уравнения.

Построим функцию Составить программу для решения нелинейного уравнения. Константа Составить программу для решения нелинейного уравнениявыбирается из условия (2). Если производная Составить программу для решения нелинейного уравнения, то значение Составить программу для решения нелинейного уравнениявыбирается из интервала Составить программу для решения нелинейного уравнения, если производная Составить программу для решения нелинейного уравнения, то – из интервала Составить программу для решения нелинейного уравнения. Так как Составить программу для решения нелинейного уравнениявсюду положительна на отрезке, то, конкретизируя значение производной в любой точке отрезка (например Составить программу для решения нелинейного уравнения), значение Составить программу для решения нелинейного уравненияопределяется из интервала Составить программу для решения нелинейного уравнения. Выбрав значение Составить программу для решения нелинейного уравнения, запишем рабочую формулу метода простых итераций:

Составить программу для решения нелинейного уравнения(3)

Итерационный процесс (3) можно начать, задав произвольное начальное приближение Составить программу для решения нелинейного уравнения. Процесс (3) заканчивается при одновременном выполнении двух условий: Составить программу для решения нелинейного уравненияи Составить программу для решения нелинейного уравнения. В этом случае значение Составить программу для решения нелинейного уравненияявляется приближенным значением корня нелинейного уравнения (1) на отрезке Составить программу для решения нелинейного уравнения.

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

Составить программу для решения нелинейного уравнения(4)

Заметим, что в точке Составить программу для решения нелинейного уравненияусловие (4) не выполняется, а в точке Составить программу для решения нелинейного уравнения— выполняется. Следовательно в качестве начального приближения выбирается точка Составить программу для решения нелинейного уравнения. Рабочая формула метода Ньютона Составить программу для решения нелинейного уравнениядля данной задачи запишется так:

Составить программу для решения нелинейного уравнения(5)

Условия выхода итерационного процесса (5) аналогичны условиям метода простых итераций.

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

Составить программу для решения нелинейного уравнения(6)

Условия выхода итерационного процесса (6) аналогичны условиям метода простых итераций.

Замечание: для того, чтобы сделать вывод о скорости сходимости методов, необходимо в каждом методе выбирать одинаковое начальное приближение.

3. Блок-схема метода простых итераций, метода Ньютона и модифицированного метода Ньютона приведена на рисунке 3.

Составить программу для решения нелинейного уравнения

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

ПРИМЕР ПРОГРАММЫ НА ЯЗЫКЕ ПАСКАЛЬ

printf(“%d %.4f %.4f %.4f %.4fn”,n++,x,y,fabs(y-x),

Решение: в результате решения нелинейного уравнения (1) на указанном отрезке тремя методами при начальном приближении Составить программу для решения нелинейного уравненияс точностью Составить программу для решения нелинейного уравненияи Составить программу для решения нелинейного уравненияполучены следующие результаты: методом простых итераций Составить программу для решения нелинейного уравнения; методом Ньютона Составить программу для решения нелинейного уравнения; модифицированным методом Ньютона Составить программу для решения нелинейного уравнения.

4. Содержание отчета.

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

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

1. Определить количество корней исходного нелинейного уравнения графическим методом и построить график (пример приведен на рисунке 2).

2. Доказать аналитическим методом единственность корня исходного нелинейного уравнения на указанном отрезке.

3. Построить итерационные формулы, реализующие процесс поиска корня на отрезке методом простых итераций, методом Ньютона и модифицированным методом Ньютона.

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

Видео:15 Метод Ньютона (Метод касательных) Ручной счет Численные методы решения нелинейного уравненияСкачать

15 Метод Ньютона (Метод касательных) Ручной счет Численные методы решения нелинейного уравнения

se.moevm.info

User Tools

Site Tools

Table of Contents

Видео:Решение нелинейного уравнения методом Ньютона (касательных) (программа)Скачать

Решение нелинейного уравнения методом Ньютона (касательных) (программа)

Практическая работа №3: Решение нелинейных уравнений и систем

Видео:Метод половинного деления решение нелинейного уравненияСкачать

Метод половинного деления решение нелинейного уравнения

Цель работы

Сформировать представление о методах решения нелинейных уравнений и систем нелинейных уравнений, выработать умение составлять и применять алгоритмы для решения уравнений и систем уравнений, привить навык использования программных средств для решения нелинейных уравнений и систем нелинейных уравнений.

Видео:Уроки C++. Простые линейные уравненияСкачать

Уроки C++. Простые линейные уравнения

Основные теоретические положения

Решение нелинейных уравнений

Численное решение нелинейных (алгебраических или трансцендентных) уравнений вида [ f(x) = 0] заключается в нахождении значений $ x $, удовлетворяющих (с заданной точностью) данному уравнению и состоит из следующих основных этапов:

Целью первого этапа является нахождение отрезков из области определения функции $ f(x) $, внутри которых содержится только один корень решаемого уравнения. Иногда ограничиваются рассмотрением лишь какой-нибудь части области определения, вызывающей по тем или иным соображениям интерес. Для реализации данного этапа используются графические или аналитические способы.

При аналитическом способе отделения корней полезна следующая теорема.

Теорема. Непрерывная строго монотонная функция $ f(x) $ имеет и притом единственный нуль на отрезке $ [a, b] $ тогда и только тогда, когда на его концах она принимает значения разных знаков.

Достаточным признаком монотонности функции $ f(x) $ на отрезке $ [a, b] $ является сохранение знака производной функции.

Графический способ отделения корней целесообразно использовать в том случае, когда имеется возможность построения графика функции $ y = f(x) $. Наличие графика исходной функции дает непосредственное представление о количестве и расположении нулей функции, что позволяет определить промежутки, внутри которых содержится только один корень. Если построение графика функции $ y = f(x) $ вызывает затруднение, часто оказывается удобным преобразовать уравнение $ f(x) = 0 $ к эквивалентному виду $ f_1(x) = f_2(x) $ и построить графики функций $ y = f_1(x) $ и $ y = f_2(x) $. Абсциссы точек пересечения этих графиков будут соответствовать значениям корней решаемого уравнения.

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

Для уточнения корня с требуемой точностью применяются различные итерационные методы, заключающийеся в построении числовой последовательности $ x^ $ ($ k = 0, 1, 2, dots $), сходящейся к искомому корню $ x^ $ уравнения $ f(x) = 0$.

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

Систему нелинейных уравнений с n неизвестными можно записать в виде [ left < begin&f_1(x_1, x_2, dots, x_n) = 0 \ &f_2(x_1, x_2, dots, x_n) = 0 \ &dotsdotsdotsdotsdotsdotsdots \ &f_n(x_1, x_2, dots, x_n) = 0 \ end right. ] или, более коротко, в векторной форме [ F(X) = 0, ] где $ X = (x_1, x_2, dots, x_n)^T $ – вектор неизвестных, $ F = (f_1, f_2, dots, f_n)^T $ – вектор-функция.

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

В дальнейшем предполагается, что ищется изолированное решение нелинейной системы.

Как и в случае одного нелинейного уравнения, локализация решения может осуществляться на основе специфической информации по конкретной решаемой задаче (например, по физическим соображениям), и – с помощью методов математического анализа. При решении системы двух уравнений, достаточно часто удобным является графический способ, когда месторасположение корней определяется как точки пересечения кривых $ f_1(x_1, x_2) = 0 $, $ f_2(x_1, x_2) = 0 $ на плоскости $ (x_1, x_2) $.

Видео:6 Метод половинного деления C++ Численные методы решения нелинейного уравненияСкачать

6 Метод половинного деления C++ Численные методы решения нелинейного уравнения

Постановка задачи

Численно решить уравнение и систему уравнений методами Ньютона и простых итераций с заданной точностью $ varepsilon $. Значение $ varepsilon $ варьируется от 0.1 до 0.000001.

📸 Видео

11 Метод Ньютона (Метод касательных) Mathcad Численные методы решения нелинейного уравненияСкачать

11 Метод Ньютона (Метод касательных) Mathcad Численные методы решения нелинейного уравнения

После этого видео, ТЫ РЕШИШЬ ЛЮБУЮ Систему Нелинейных УравненийСкачать

После этого видео, ТЫ РЕШИШЬ ЛЮБУЮ Систему Нелинейных Уравнений

Метод итерацийСкачать

Метод итераций

10 Численные методы решения нелинейных уравненийСкачать

10 Численные методы решения нелинейных уравнений

1 3 Решение нелинейных уравнений методом простых итерацийСкачать

1 3 Решение нелинейных уравнений методом простых итераций

Решение нелинейного уравнения методом хорд (секущих) (программа)Скачать

Решение нелинейного уравнения методом хорд (секущих) (программа)

Решение нелинейных уравненийСкачать

Решение нелинейных уравнений

Как найти корни уравнения в Excel с помощью Подбора параметраСкачать

Как найти корни уравнения в Excel с помощью Подбора параметра

МЗЭ 2021 Лекция 9 Метод Ньютона для решения нелинейных уравненийСкачать

МЗЭ 2021 Лекция 9 Метод Ньютона для решения нелинейных уравнений

14 Метод половинного деления Ручной счет Численные методы решения нелинейного уравненияСкачать

14 Метод половинного деления Ручной счет Численные методы решения нелинейного уравнения
Поделиться или сохранить к себе: