Московский технический университет связи и информатики
Факультет: ЗОТФ
Предмет: Информатика
Курсовая работа
Тема и название работы:
«Лабораторная работа: Программирование алгоритмов регулярных циклических структур»
Студент: Королев И. С.
1 курс, группа 2БШИ1601
Москва, 2017
Содержание
1. Задание на разработку проекта. 3
2. Формализация и уточнение задания. 3
3. Разработка приложения. 3
3.1 Разработать графический интерфейс пользователя. 3
3.2 Установка свойств объектов. 4
3.3 Разработка схемы алгоритма. 5
3.4 Написание программного кода. 7
4. Результат выполнения проекта. 9
5. Выводы.. 10
Задание на разработку проекта
Постройте таблицу и найдите наибольшее значение функции y=f(x) при изменении x на отрезке [a; b] c шагом h.
Отрезок [-5,5], шаг h=0.5
Формализация и уточнение задания
Для решения задачи табуляции функции на заданном интервале следует использовать алгоритмическую структуру регулярного типа, т.к. заданы начальное и конечное значения аргумента, а также шаг его изменения, то есть в этом случае можно заранее определить количество вычисленных значений. Данная задача решается с помощью процедуры-подпрограммы RegCikl(), которая, получив в качестве входных параметров (по значению) границы интервала (a и b) и шаг (h) изменения аргумента, табулирует функцию, а также вызывает процедуру-функцию calculateFunction(), которая и вычисляет значение заданной функции от заданного аргумента.
Разработка приложения
Разработать графический интерфейс пользователя
Приложение может иметь вид как на рис. 1
Рис.1 Графический интерфейс приложения.
Установка свойств объектов
Используемые объекты и их свойства приведены в таблице 1.
Таблица 1. Свойства объектов.
Имя объекта | Свойство | Значениесвойства |
Form1 | Text | Программирование алгоритмов регулярных циклических структур и цикл в цикле |
TextBox1 | Name | TextBox1 |
Text | ||
ForeColor | Красный | |
Font | Microsoft Sans Serif, Жирный, 10 пунктов | |
TextBox2 | Name | TextBox2 |
Text | ||
ForeColor | Черный | |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
TextBox3 | Name | TextBox3 |
Text | ||
ForeColor | Черный | |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
TextBox4 | Name | TextBox3 |
Text | ||
ForeColor | Черный | |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
Label1 | Name | A: |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
Label2 | Name | B: |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
Label3 | Name | H: |
Font | Microsoft Sans Serif, Жирный, 8 пунктов | |
Button1 | Name | Button1 |
Text | Start | |
Button2 | Name | Button2 |
Text | End |
Разработка схемы алгоритма
Схема алгоритма представлена на рис.2
Рис.2 Схема алгоритма
Написание программного кода
Imports System.Math
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
End
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim x, max, y, a, b, h, i As Double
a = CDbl(TextBox1.Text)
b = CDbl(TextBox2.Text)
h = CDbl(TextBox3.Text)
i = 1
max = Exp(1) ^ (((-x) ^ 2) + x + 1)
For x = a + 1 To b Step h
y = Exp(1) ^ (((-x) ^ 2) + x + 1)
If y > max Then max = y
Next
TextBox4.Text = max
End Sub
End Class