Автор работы: Пользователь скрыл имя, 01 Ноября 2013 в 15:48, курсовая работа
Microsoft Excel имеет встроенный язык программирования - Visual Basic for Аpplications (VBA). Этот язык позволяет создавать приложения, выполняемые в среде Microsoft Office. Это могут быть разнообразные аналитические программы, финансовые системы, программы учета кадров, системы автоматического создания официальных писем/документов с помощью библиотеки готовых шаблонов и т.п. При этом интерфейс создаваемой программы может быть совершенно непохожим на интерфейс того приложения, в котором она написана.
Введение
1. Условие задачи
2. Описание заданного численного метода
2.1 Программа процедуры вычисления корня
2.2 Главная программа
3. Блок схема
3.1 Аргументы процедуры Koren
3.2 Результаты вычисления значения корня для заданных
пяти вариантов допустимой ошибки
4. График функции
Заключение
Библиографический список
xw = xs
Else
Flag = True
End If
End Sub
Процедура вывода расчетов в книгу Excelle и построения графика.
Private Sub График()
Dim x As Single, h As Single
Dim n As Integer
h = 0.1
n = 2
Worksheets("Лист1").Range("A1"
Worksheets("Лист1").Range("B1"
For x = a To b + h / 2 Step h
Worksheets("Лист1").Range("A" & n) = x
Worksheets("Лист1").Range("B" & n) = f(x)
n = n + 1
Next
ActiveWorkbook.Charts.Add Worksheets("Лист2")
Charts(1).ChartWizard Worksheets("Лист1").Range("A2:
End Sub
Private Sub cmdПуск_Click()
Dim xw As Single, it As Integer
Dim Flag As Boolean
'сделаем недоступным
LblСообщ.Visible = False
LblЗначКоР.Visible = False
LblРезультат.Visible = False
LblКолИт.Visible = False
Lblвып.Visible = False
LblИт.Visible = False
'Проверка задания значений исходных данных
If Not Задано_a Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Не задан левый конец отрезка"
LblСообщ.Visible = True
Txta.SetFocus
Exit Sub
End If
If Not Задано_b Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Не задан правый конец отрезка"
LblСообщ.Visible = True
Exit Sub
End If
If Not Задано_eps Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Не задана допустимая ошибка"
LblСообщ.Visible = True
Exit Sub
End If
a = Txta.Text
b = Txtb.Text
eps = Txteps.Text
' Проверка корректности данных
If a >= b Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Нарушено условие a < b?"
LblСообщ.Visible = True
Exit Sub
End If
If eps <= 0 Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Допустимая ошибка eps не может быть < 0 "
LblСообщ.Visible = True
Exit Sub
End If
' Вычисление корня
koren 100, a, b, eps, xw, it, Flag
' Вывод результатов вычислений
If Flag Then
LblСообщ.ForeColor = RGB(255, 0, 0)
LblСообщ.Caption = "Решение не получено!"
LblСообщ.Visible = True
Exit Sub
Else
LblСообщ.ForeColor = RGB(0, 0, 255)
LblСообщ.Font.Size = 12
LblСообщ.Caption = "Решение получено!"
LblСообщ.Visible = True
LblЗначКоР.Visible = True
LblРезультат.Caption = xw
LblРезультат.Visible = True
LblКолИт.Caption = it
LblКолИт.Visible = True
Lblвып.Visible = True
LblИт.Visible = True
End If
' вывод данных в книгу Excel
График
End Sub
3 Блок схема
it Pred
Bool
xn = (a+ b)/2
it = 0
fxn = f(xn)
f p1xn = p1(xn)
Нет
xs = xn - f(xn) / p1(xn)
Bool = Abs(xs - xn) < eps Or it > pred
xn= xs
fxn=fxs
it=it+1
Вход
Нет
Да
Flag = True
Flag = False
xw = xs
Выход
Да
3. 1 Аргументы процедуры Koren.
pred – предельное количество итераций (защита против зацикливания);
a, b – левая
и правая границы отрезка,
eps – допустимая ошибка вычисления корня функционального уравнения;
xw – полученное приближенное значение корня функционального уравнения;
it – выполненное количество итераций;
flag – сигнал зацикливания, когда обращение к процедуре закончилось тем, что количество итераций превысило допустимую величину pred и приближенное значение корня не было получено.
Входные аргументы
pred – переменная целого типа (предельное количество итераций);
a, b – переменные
с плавающей точкой (левая и
соответственно правая граница
заданного отрезка, на котором
содержится единственный
eps – переменная с плавающей точкой (допустимая ошибка).
Выходные аргументы
xw – переменная с плавающей точкой (приближенное значение корня);
it – переменная целого типа (количество выполненных итераций);
flag – переменная логического типа (признак зацикливания).
Локальные данные
xn- переменная с плавающей точкой (начальные приближения к корню);
xs - переменная с плавающей точкой (следующее приближение к корню);
fxn, fp1xn и fxs - переменные с плавающей точкой (значения f(xn1), f(xn2) и f(xs) соответственно);
bool - переменная логического типа (рабочая переменная).
3.2 Результаты вычисления
Таблица- Результаты выполнения расчета
a = 2 b = 4 | |||
№ значения допустимой ошибки |
Допустимая ошибка |
Значение корня |
Выполнено итераций |
1 |
2e–2 |
3,229964 |
2 |
2 |
8e–4 |
3,229959 |
3 |
3 |
8e–5 |
3,229959 |
3 |
4 |
1e–5 |
3,229959 |
3 |
5 |
1e–6 |
3,229959 |
4 |
4. График функции
На рисунке 3 изображен полученый график функции.
Рисунок 3 – График функции
Приложение А
Интерфейс программы Frame1
Lbla
Lblb
Lbleps
LblВып
LblЗначКор
Txta
Txtb
Txteps
LblИт
LblКолИт
LblРезультат
LblСообщ
CmdПуск
CmdВыход
Рисунок А.1 - Интерфейс проекта |
Заключение
Выполнение курсовой работы способствует закреплению и углублению знаний и практических навыков, полученных при изучении дисциплины «Информатика». В результате выполнения работы я получил следующие навыки:
41
КР. ИС. 230200. ПЗ
Лист
Дата
Подпись
№ докум.
Лист
Изм.