Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

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

Название: Решение нелинейных уравнений методом деления отрезка пополам
Раздел: Рефераты по математике
Тип: реферат Добавлен 01:10:45 23 декабря 2010 Похожие работы
Просмотров: 118 Комментариев: 20 Оценило: 3 человек Средний балл: 5 Оценка: неизвестно     Скачать

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

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

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

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

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

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

Реферат

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

студента 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 Построение тестов и отладка программы

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

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита17:05:11 04 ноября 2021
.
.17:05:07 04 ноября 2021
.
.17:05:04 04 ноября 2021
.
.17:05:01 04 ноября 2021
.
.17:04:58 04 ноября 2021

Смотреть все комментарии (20)
Работы, похожие на Реферат: Решение нелинейных уравнений методом деления отрезка пополам

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

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



Результаты(294402)
Комментарии (4230)
Copyright © 2005 - 2024 BestReferat.ru / реклама на сайте