Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Решение нелинейных уравнений методом деления отрезка пополам

Тип Реферат
Предмет Математика
Просмотров
1420
Размер файла
31 б
Поделиться

Ознакомительный фрагмент работы:

Решение нелинейных уравнений методом деления отрезка пополам

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО

ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «КЕМЕРОВСКИЙ

ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

Математический факультет

Кафедра автоматизации исследований и технической кибернетики

Реферат

“Решение нелинейных уравнений методом деления отрезка пополам”

студента 3 курса

Ткаченко Ивана Сергеевича

Специальность 010501

«Прикладная математика и информатика»

Преподаватель:

Преслер В.Т.

КЕМЕРОВО 2009


Оглавление

1 Формулировка задачи

2 Математическая постановка задачи

2.1 Метод решения задачи

2.2 Способы ввода, вывода и организации данных

2.3 Исключительные ситуации и реакция на них

2.4 Модульная организация программы

2.5 Спецификация данных

2.6 Организация вычислительного процесса

3 Разработка блок-схемы алгоритма задачи

4 Создание программы на алгоритмическом языке

5 Построение тестов и отладка программы

1Формулировка задачи

Найти корни нелинейного уравнения . Значения коэффициентов , границы отрезка интегрирования и значение допустимой погрешности задаются пользователем.

2 Математическая постановка задачи

2.1 Метод решения задачи

Вычисление корня функции методом деления отрезка пополам.

Корень функции F(x) — это такое значение ее аргумента х*, при котором выполняется условие F(x*) = 0. Известно, что для решения такого уравнения необходимо задать интервал [a, b], на котором будет происходить поиск решения. Если решение действительно существует, является на этом интервале единственным , принадлежит заданному интервалу и функция F(x) принимает на границах интервала значения противоположных знаков. Другими словами, произведение значений функции на границах интервала отрицательно: F(a)F(b) < 0. Далее исходный интервал делится средней точкой с = (а+b)/2 на две равные части, из которых выбирается лишь та, которая содержит решение уравнения. Процедура деления отрезка пополам повторяется до тех пор, пока корень функции не будет найден с заданной точностью. Оценкой погрешности в данном случае может быть величина последнего интервала |а-b| или значение |F(x)|.

2.2 Способы ввода, вывода и организации данных

Исходные данные в этой задаче – это коэффициенты уравнения, точность решения и отрезок [a,b], на котором ищется решение уравнения.

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

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

Вычислительный процесс этой задачи базируется на координатах отрезка[a,b] , точности e вещественного типа и функцие .

2.3 Исключительные ситуации и реакция на них

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

2.4 Модульная организация программы

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


2.5 Спецификация данных

При рекурсивной организации программы имеем стандартный модуль, но содержащий функцию funct. Функция functтипа real. Функция возвращает значения. Все переменные в программе глобальные. Значения коэффициентов передаются в функцию.

Исходные данные:

a0, a1, a2 – коэффициенты уравнения типа Real;

e – точность решения типа Real;

a, b – координаты отрезка типа Real.

Результирующие данные:

x – переменная хранящая значение точки(I итерация, корень) типа Real;

i – счетчик итераций типа Integer.

Промежуточные данные:

x_pre - переменная, хранящая предыдущее значение точки (i-1 итерация) типа Real;

d– дискриминант типа Real;

x1 –первый корень уравнения, найденный методом решения квадратных уравнений через дискриминант типа Real;

x2 - второй корень уравнения, найденный методом решения квадратных уравнений через дискриминант типа Real;

2.6 Организация вычислительного процесса

Вычислительный процесс базируется на следующем подходе. Проверяем есть ли у заданного уравнения действительные корни по формуле: D=a1^2-a0*a2. Если D<0, значит действительных корней нет и решить такую систему у нас не получится. Если действительные корни есть, то найдем их методом решения квадратных уравнений через дискриминант. Проверим единственность корня на заданном отрезке [a,b]. Если на этом отрезке существует не один корень или вообще не существует корней, то надо задать другой отрезок. Затем делим отрезок пополам и проверяем на какой его половине лежит корень. Для этого значение функции должна быть разного знака на концах отрезка. Полученный отрезок мы опять делим пополам. Этот итерационный процесс мы продолжаем до тех пор пока модуль разности между точкой, полученной на i-й итерации и точкой, полученной на (i-1) итерации не будет меньше заданной точности. Это и будет корнем уравнения.

3 Разработка блок-схемы алгоритма задачи

Блок-схема решения задачи представлена ниже


4 Создание программы на алгоритмическом языке

Для реализации программы решения поставленной задачи использован алгоритмический язык VBA, возможности которого достаточны для реализации задач подобного типа. Для отображения результатов (корни уравнения) использовано Windows-окно для вывода сообщений. Результат, выводимый через это окно, сохраняется только на время его существования. Ниже представлен листинг варианта программы, разработанный согласно представленной расчетной схемы и графическому алгоритму.

Private a0, a1, a2, e, a, b, x, i

Private Sub CommandButton1_Click()

a0 = CDbl(TextBox2.Text)

a1 = CDbl(TextBox3.Text)

a2 = CDbl(TextBox4.Text)

e = CDbl(TextBox5.Text)

a = CDbl(TextBox9.Text)

b = CDbl(TextBox10.Text)

d = a1 ^ 2 - 4 * a0 * a2

TextBox14.Text = d

If d < 0 Then

Label16.Visible = True

TextBox7.Text = ""

TextBox8.Text = ""

TextBox11.Text = ""

TextBox12.Text = ""

TextBox13.Text = ""

Exit Sub

Else

Label16.Visible = False

End If

x1 = (-a1 - d ^ (1 / 2)) / 2 * a0

x2 = (-a1 + d ^ (1 / 2)) / 2 * a0

TextBox12.Text = x1

TextBox13.Text = x2

t = 0

If (a < x1) And (a < x2) And (b > x1) And (b > x2) Then t = 1

If (a < x1) And (a < x2) And (b < x1) And (b < x2) Then t = 1

If (a > x1) And (a > x2) And (b > x1) And (b > x2) Then t = 1

If (a > x1) And (a < x2) And (b > x1) And (b < x2) Then t = 1

If t = 1 Then

Label14.Visible = True

TextBox7.Text = ""

TextBox8.Text = ""

TextBox11.Text = ""

Exit Sub

Else

Label14.Visible = False

Label16.Visible = False

i = 0

x = a

Do

i = i + 1

x_pre = x

x = (a + b) / 2

If funct(a) * funct(x) > 0 Then

a = x

Else

b = x

End If

Loop While (Abs(x - x_pre) > e)

TextBox7.Text = x

TextBox8.Text = i

TextBox11.Text = funct(x)

End If

End Sub

Private Sub CommandButton3_Click()

UserForm1.Hide

End Sub

Function funct(x)

funct = a0 * x ^ 2 + a1 * x + a2

End Function


5 Построение тестов и отладка программы

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


Нет нужной работы в каталоге?

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

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
157018
рейтинг
icon
6076
работ сдано
icon
2739
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
66 780 оценок star star star star star
среднее 4.9 из 5
Донской государственный технический университет
Всё очень качественно выполнено! Реферат на 18 страниц необходимо было написать за 8 часов...
star star star star star
Уральский государственный юридический университет
Отличный исполнитель! Всем советую, работа выполнено идеально и без замечаний! Спасибо Вам...
star star star star star
МГТУ
Замечательный исполнитель, всё сделано очень качественно. Большое спасибо!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Для электрической схемы, изображенной на рисунке

Решение задач, Электротехника и электроника

Срок сдачи к 4 июня

2 минуты назад
2 минуты назад

дм

Курсовая, дм

Срок сдачи к 11 июня

4 минуты назад

Нужно настроить документ ворд отступы интервалы и...

Курсовая, Электроснабжение

Срок сдачи к 3 июня

6 минут назад

задача 2

Решение задач, Электротехника и электроника

Срок сдачи к 5 июня

7 минут назад

решить одно задание

Контрольная, Линейная алгебра

Срок сдачи к 3 июня

9 минут назад

Доработать

Курсовая, Управление ассортиментом товаров, торговое дело

Срок сдачи к 4 июня

10 минут назад
10 минут назад

Выполнить 3 задания из файла

Контрольная, Международное частное право

Срок сдачи к 9 июня

11 минут назад

Выполнить контрольное практическое задание и дать развернутые ответы

Контрольная, Основы судебно-экспертной деятельности

Срок сдачи к 9 июня

11 минут назад

Сделать два реферата

Контрольная, Доказывание и доказательства по гражданским, административным делам и экономическим спорам

Срок сдачи к 9 июня

11 минут назад

Выполнить задание из файла

Контрольная, Транспортное право

Срок сдачи к 9 июня

11 минут назад

Поведенческая экономика. Исследование паттернов людей

Диплом, Поведенческая экономика

Срок сдачи к 1 сент.

11 минут назад

Реклама и интегрированные коммуникции

Лабораторная, Информатика и основы информационно-коммуникационных технологий

Срок сдачи к 5 июня

11 минут назад

Практическое задание

Другое, Информатика и основы информационно-коммуникационных технологий

Срок сдачи к 5 июня

11 минут назад

Исправить недочеты в работе вкр. без нейросети!! самое важное!

Другое, Государственное и муниципальное управление

Срок сдачи к 4 июня

11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно