Нахождение экстремума функции методом дихотомии
Автор: user26 • Май 28, 2020 • Лабораторная работа • 529 Слов (3 Страниц) • 521 Просмотры
Федеральное государственное бюджетное образовательное
учреждение высшего профессионального образования
Кубанский государственный технологический университет
(ФГБОУ ВПО КубГТУ)
Институт компьютерных систем и информационной безопасности
Кафедра ИСП
Отчет
Лабораторная работа № 1:
по дисциплине: Информационные системы и технологии
на тему: «Нахождение экстремума функции методом дихотомии»
Краснодар
2016
Вариант №1
Цель и порядок выполнения работы
Цель работы - моделирование на ЭВМ одного из методов нахождение экстремума функции (метод дихотомии) и исследование на модели заданной функции.
Порядок выполнения работы:
- ознакомиться с описанием работы;
- разработать форму для приложения EXCEL, реализующие метод;
- заполнить форму и отладить её;
- исследовать заданную функцию;
- оформить отчет.
Ход выполнеия работы:
- Вводим min значение аргумента (по умолчанию 0)
- Вводим max значение аргумента (по умолчанию 2*π)
- Вводим шаг изменение аргумента (по умолчанию(0 + 2*π)/10)
- Вводим функцию y==2+SIN(X) в ячейку С2
- Добавляем кнопки «Построить график», «Найти максимум», «Найти минимум» и «Удалить график»
- Применяем алгоритм расчёта максимума и минимума функции
- Строим диаграмму, редактируем, добавляем легенду и название
Приложение А
Скриншоты работы программы
[pic 1]
Рисунок 1 – Программа после запуска.
[pic 2]
Рисунок 2 – Построение графика функции.
[pic 3]
Рисунок 3 – Нахождение минимума графика функции.
[pic 4]
Рисунок 4 – Нахождение максимума графика функции.
Приложение Б
Листинг программы в среде разработке VBA
//Кнопка нахождения Максимума
Sub Кнопка3_Щелчок()
Dim i As Integer
Dim pervz As Single
Dim poslz As Single
eps = 0.05
Rashet i, pervz, poslz
a = pervz
b = poslz
If Abs(a - b) > eps Then
Do
C = (a + b - eps) / 2
D = (a + b + eps) / 2
Worksheets(1).Cells(i + 1, 5).Value = C
E = Worksheets(1).Cells(i + 1, 6).Value
Worksheets(1).Cells(i + 1, 5).Value = D
F = Worksheets(1).Cells(i + 1, 6).Value
If E < F Then
b = D
Else
a = C
End If
Loop While Abs(a - b) > 2 * eps
End If
Xmin = (a + b) / 2
Worksheets(1).Cells(6, 4).Value = Xmin
Worksheets(1).Cells(6, 2).Value = "Максимальное значение функции"
End Sub
//Кнопка нахождения минимума
Sub Кнопка2_Щелчок()
Dim i As Integer
Dim pervz As Single
Dim poslz As Single
...