Курсовая работа: Разработка программного модуля

Курсовая работа: Разработка программного модуля




🛑 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Кафедра «Автоматизированные системы управления»
Целью данной курсовой работы является разработка программного модуля, с помощью которого можно задать размерность квадратной матрицы, заполнить матрицу случайными целыми числами от 0 до 6 и вычислить:
- сумму элементов, находящихся под главной диагональю,
- сумму элементов, составляющих главную диагональ.
Для разработки программы использован табличный процессор Excel и язык программирования Visual Basic for Application.
В первом разделе, который называется «Постановка задачи», приведена математическая модель задачи, описаны входные и выходные данные, описана обработка ошибок.
Во втором разделе, «Проектирование программного модуля», изображена структурная диаграмма программного модуля, разработана схема программного модуля и пользовательский интерфейс.
В разделе «Реализация программного модуля» описан код программы, произведено описание используемых операторов и функций.
Тестирование программного модуля приведено в четвертом разделе.
Кроме того, дано заключение и приведён список использованных источников.
Определение квадратной матрицы: квадратной матрицей n-го порядка называется матрица, состоящая из m строк и m столбцов. Главной диагональю квадратной матрицы называется диагональ, составленная из элементов a 11
a 22
… a mm
.
Способ нахождения суммы элементов квадратной матрицы, лежащих под главной диагональю:
Необходимый результат получается при суммировании элементов в следующем порядке: а 21
+ а 31
+ а 32
+…+ а i1
+ a i2
+ a i3
+ a i(j-1)
– суммируются элементы, начиная со второй строки, и, при увеличении строки на 1, число столбцов, содержащих нужные элементы, также увеличивается на 1. В кратком виде этот цикл выглядит так: i=f…m, где начальное f=2; j=1…(m-b), где начальное b=m-1. При каждой последующей итерации значение f увеличивается на 1, а значение b на 1 уменьшается.
Сумму элементов диагонали матрицы можно получить при суммировании элементов, лежащих на пересечении одинаковых строки и столбца, т.е. если i=j.
В данном курсовом проекте к входным данным относится размерность квадратной матрицы (значение m).
- значение m должно вводиться в числовой форме;
- значение m должно быть целым, положительным числом больше нуля.
- вывод заполненной матрицы на форму;
- вывод заполненной матрицы на лист Excel;
- сумма элементов, находящихся под главной диагональю;
- сумма элементов, составляющих главную диагональ.
- выходные данные выводятся в числовом виде.
При выполнении программного модуля произведена обработка следующих ошибок:
- в поле ввода размерности матрицы вводится нечисловое значение. В этом случае появляется сообщение об ошибке, которое имеет вид, представленный на рисунке 1:
Рисунок 1 - Сообщение об ошибке, в случае нечислового ввода размерности матрицы
- в поле ввода вводится дробное числовое значение. В этом случае появляется сообщение об ошибке, которое имеет вид, представленный на рисунке 2:
Рисунок 2 - Сообщение об ошибке, в случае ввода дробного значения размерности матрицы
- в поле ввода вводится отрицательное число, либо число равное нулю. В этом случае появляется сообщение об ошибке, которое имеет вид, представленный на рисунке 3:
Рисунок 3 - Сообщение об ошибке, в случае ввода отрицательного, либо нулевого значения размерности матрицы
После уведомления пользователя об ошибке поле ввода очищается, и курсор возвращается в это поле.
2. Проектирование программного модуля

2.1 Структурная диаграмма программного модуля

Программа имеет структуру, показанную на рисунке 4:
Рисунок 4 - Структурная диаграмма программного модуля
В данной диаграмме UserForm_Initialize() – процедура инициализации пользовательской формы. CommandButton1_Click() – процедура, срабатывающая при нажатии кнопки «Заполнить матрицу», которая производит проверку правильности ввода размерности матрицы, заполнение матрицы и вывод её на пользовательскую форму. CommandButton2_Сlick() – процедура, срабатывающая при нажатии кнопки «Очистить», которая очищает форму. CommandButton3_Сlick() – процедура, срабатывающая при нажатии кнопки «Выйти», позволяющая пользователю завершить работу с программой. CommandButton4_Click() – процедура, срабатывающая при нажатии кнопки «О программе», которая даёт краткие сведения о программе и её разработчике. CommandButton5_Сlick() – процедура, срабатывающая при нажатии кнопки «Работать с Excel», позволяющая пользователю переключиться на работу с листом Excel. OptionButton1_Click() – процедура-переключатель, при выборе которого вычисляется сумма элементов, находящихся под главной диагональю. OptionButton2_Click() – процедура-переключатель, при выборе которого вычисляется сумма элементов, составляющих главную диагональ.
2.2 Разработка схемы программного модуля и ее описание

Блок-схема процедуры заполнения квадратной матрицы представлена на рисунке 5:
Рисунок 5 – Схема программного модуля (Заполнение матрицы)
2 – проверка того, что введённый размер массива является числом;
3 – проверка того, что введённый размер массива является положительным числом, отличным от нуля;
4 – проверка того, что введённый размер массива является целым числом;
6 – цикл, который пробегает значения строк от 1 до заданного размера массива, с шагом равным по умолчанию 1;
7 – цикл, который пробегает значения столбцов от 1 до заданного размера массива, с шагом равным по умолчанию 1;
8 – тело цикла, которое заполняет массив случайными числами от 0 до 6;
9 – вывод результата в поле, предназначенное для вывода квадратной матрицы.
Блок-схема процедуры для первого переключателя представлена на рисунке 6:
Рисунок 6 – Схема программного модуля (первый переключатель)
1 – задание начальных параметров для вычисления суммы элементов матрицы;
2 – цикл, который пробегает значения строк от f до заданного размера массива, с шагом равным по умолчанию 1;
3 – цикл, который пробегает значения столбцов от 1 до m-b, с шагом равным по умолчанию 1;
4 – вычисление суммы элементов, лежащих под главной диагональю;
5 – увеличение параметра f на 1 и уменьшение параметра b на 1, после окончания цикла для столбцов (блок 3), и переход к циклу для строк (блок 2);
6 – вывод результата в поле вывода суммы элементов.
Блок-схема процедуры для второго переключателя представлена на рисунке 7:
Рисунок 7 – Схема программного модуля (второй переключатель)
1 – задание начальных параметров для вычисления суммы элементов матрицы;
2 – цикл, который пробегает значения строк от 1 до заданного размера массива, с шагом равным по умолчанию 1;
3 – цикл, который пробегает значения столбцов от 1 до заданного размера массива, с шагом равным по умолчанию 1;
4 – проверка условия i = j. В случае выполнения данного условия происходит переход к блоку 5, в противном случае – к блоку 3;
5 – вычисление суммы элементов, составляющих главную диагональю;
6 – вывод результата в поле вывода суммы элементов.
Блок-схема процедуры для работы с листом Excel представлена на рисунке 8:
Рисунок 8 – Схема программного модуля (Работа с листом Excel)
2 – проверка того, что введённый размер массива является числом;
3 – проверка того, что введённый размер массива является положительным числом, отличным от нуля;
4 – проверка того, что введённый размер массива является целым числом;
6 – цикл, который пробегает значения строк от 1 до заданного размера массива, с шагом равным по умолчанию 1;
7 – цикл, который пробегает значения столбцов от 1 до заданного размера массива, с шагом равным по умолчанию 1;
8 – тело цикла, которое заполняет массив случайными числами от 0 до 6;
10 – задание начальных параметров для вычисления суммы элементов матрицы, расположенных под главной диагональю;
11 – цикл, который пробегает значения строк от f до заданного размера массива, с шагом равным по умолчанию 1;
12 – цикл, который пробегает значения столбцов от 1 до m-b, с шагом равным по умолчанию 1;
13 – вычисление суммы элементов, лежащих под главной диагональю;
14 – увеличение параметра f на 1 и уменьшение параметра b на 1, после окончания цикла для столбцов (блок 12), и переход к циклу для строк (блок 11);
15 – вывод суммы элементов, лежащих под главной диагональю на лист Excel;
16 – задание начальных параметров для вычисления суммы элементов матрицы, составляющих главную диагональ;
17 – цикл, который пробегает значения строк от 1 до заданного размера массива, с шагом равным по умолчанию 1;
18 – цикл, который пробегает значения столбцов от 1 до заданного размера массива, с шагом равным по умолчанию 1;
19 – проверка условия i = j. В случае выполнения данного условия происходит переход к блоку 5, в противном случае – к блоку 3;
20 – вычисление суммы элементов, составляющих главную диагональю;
21 – вывод суммы элементов, составляющих главную диагональ на лист Excel.
2.3 Разработка пользовательского интерфейса.
Пользовательский интерфейс (ПИ) программы - это совокупность элементов, позволяющих пользователю программы управлять ее работой и получать требуемые результаты, т.е. это диалог между компьютером и пользователем.
Интерфейс для программного модуля, разработанного в данном курсовом проекте представлен на рисунке 9:
Рисунок 9 - Вид пользовательской формы: 1 – поле для ввода размерности квадратной матрицы; 2 – поле для вывода суммы элементов матрицы, в зависимости от выбранного переключателя; 3 – переключатель, при выборе которого вычисляется сумма элементов матрицы, находящихся под главной диагональю; 4 – переключатель, при выборе которого вычисляется сумма элементов матрицы, составляющих главную диагональ; 5 – кнопка, при нажатии которой происходит заполнение матрицы; 6 – кнопка, которая осуществляет очистку всех полей формы; 7 – кнопка, осуществляющая выход из программы; 8 – кнопка, при нажатии которой появляется краткая информация о программе; 9 – кнопка, позволяющая пользователю переключиться на работу с листом Excel; 10 - поле для вывода заполненной матрицы
‘задаём начальные параметры при инициализации формы:
UserForm1.Caption = "Курсовой проект"
If IsNumeric(TextBox1.Text) = False Then
MsgBox "Размерность матрицы должна задаваться числом", 16, "Ошибка ввода"
MsgBox "Размерность матрицы задаётся положительным числом отличным от нуля ", 16,
MsgBox " Размерность матрицы должна задаваться целым числом ", 16, " Ошибка ввода "
'процедура очистки пользовательской формы:
' вызов краткой информации о программе:
MsgBox "Программа для заполнения случайными числами" & Chr(13) & _
"от 0 до 6 квадратной матрицы, размерностью" & Chr(13) & _
"задаваемой пользователем, и вычисления суммы" & Chr(13) & _
"элементов матрицы, в зависимости от выбрано-" & Chr(13) & _
" Разработчик: Логунов А.П..", 48, "О программе"
'процедура вычисления суммы элементов, расположенных под главной диагональю:
'процедура вычисления суммы элементов, составляющих главную диагональ:
m = InputBox("Задайте размерность матрицы", "Окно ввода")
MsgBox ""Размерность матрицы должна задаваться числом", 16, "Ошибка ввода"
MsgBox "Размерность матрицы задаётся положительным числом отличным от нуля ", 16,
MsgBox " Размерность матрицы должна задаваться целым числом ", 16, " Ошибка ввода "
Cells(5, 1) = "Матрица размерностью n=" & m & ":"
Cells(2, 1) = "Сумма элементов под главной диагональю =" & summa1
Cells(3, 1) = " Сумма элементов составляющих главную диагональ =" & summa2
Select Case MsgBox("Вернуться к UserForm?", vbYesNo, "Окно возврата")
3.2 Описание использованных операторов и функций

Dim Имя_переменной As Тип_переменной – синтаксис описания типа переменной;
Private – указывает, что процедура Sub доступна для всех других процедур только того модуля, в котором она описана;
If Условие Then [Инструкция] [Else Инструкции_else] – оператор условного перехода. Если условие принимает значение True, то выполняется инструкция Then, если False, то выполняется инструкция_else. Ветвь Else является необязательной;
IsNumeric(переменная) – функция, проверяющая является ли переменная числовым значением;
MsgBox (сообщение, [кнопка], [заголовок])- выводит на экран диалоговое окно, содержащее сообщение;
CDbl() – функция преобразования считываемых данных в числовой формат типа Double, т.к. числа, вводимые в текстовую область формы, воспринимаются как текст, а не как число.
Int() – функция, которая возвращает целые числовые значения;
ReDim <имя массива>(<задаётся размерность массива>) – функция задания динамического массива;
For Счетчик = Начало To Конец [Step Шаг]
Next Счетчик – повторяет выполнение группы инструкций, пока Счетчик изменяется от начального значения до конечного с указанным шагом. Если шаг не указан, то он полагается равным 1;
Rnd – функция, которая служит для генерации случайных чисел;
End With – позволяет выполнить последовательность инструкций над Объектом не повторяя его имени;
ColumCount – устанавливает число столбцов в списке;
SetFocus – возвращает курсор в указанное поле;
InputBox () – выводит на экран диалоговое окно, содержащее сообщение и поле ввода, устанавливает режим ожидания ввода текста пользователем или нажатия кнопки, а затем возвращает значение типа String, содержащее текст, введенный в поле;
End Select – выполняет одну из нескольких групп инструкций в зависимости от некоторого выражения.
4. Тестирование программного модуля

Ниже приведён пример работы программного модуля. Для этого ввели в поле ввода размерность матрицы равную 5. При нажатии кнопки «Заполнить матрицу» в окне вывода появилось квадратная матрица пятого порядка, заполненная случайными числами от 0 до 6, что представлено на рисунке 10:
Рисунок 10 - Вид пользовательской формы с заполненной матрицей
При выборе первого переключателя определяется сумма элементов, находящихся под главной диагональю матрицы. При выборе второго переключателя – сумма элементов матрицы, составляющих главную диагональ.
При нажатии кнопки «о программе» появляется сообщение с краткой информацией о программе.
При нажатии кнопки «Работать с Excel» появляется диалоговое окно, в котором задаётся размерность матрицы.
При нажатии кнопки «Оk» на листе Excel появляется результат, который представлен на рисунке 11:
Рисунок 11 – Лист Excel с результатом
Диалоговое окно «окно возврата» позволяет пользователю вернуться к работе с пользовательской формой.
Как видно из приведенного примера программа является полностью работоспособной.
В данном курсовом проекте с помощью языка программирования Visual Basic for Application был разработан программный модуль, который позволяет: задавать квадратную матрицу и программно заполнять её случайными числами от 0 до 6; вычислять сумму элементов находящихся под главной диагональю; вычислять сумму элементов составляющих главную диагональ. Был предусмотрен режим работы с листом Excel.
В программе произведена обработка возможных ошибок, что облегчает пользователю работу с программой.
В ходе тестирования программа показала себя полностью работоспособной. Следовательно, поставленную задачу можно считать выполненной.
1. Гарнаев А.Ю. Самоучитель VBA. – СПб.: БХВ – Санкт-Петербург, 2000. – 512 с.
2. Гарнаев А.Ю. Самоучитель VBA. – СПб, БХВ – Санкт-Петербург, 2002.
3. MS OfficeXP: Разработка приложений / Под редакцией Ф.А. Новикова. СПб.: БХВ – Санкт-Петербург, 2003.

Название: Разработка программного модуля
Раздел: Рефераты по информатике
Тип: курсовая работа
Добавлен 06:22:10 02 сентября 2010 Похожие работы
Просмотров: 867
Комментариев: 14
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Курсовая работа: Разработка программного модуля
Реферат На Тему Русская Культура Серебрянного Века
Реферат по теме МИГ-29, история применения и модификации
Реферат по теме Становление системы образования в России
Учебная Практика На Кафедре Отчет
Парикмахерское Искусство Дипломная
Курсовая работа: Оценка фактической эффективности и степени освоения принятых в хозяйстве севооборотов
Курсовая Политика Осуществляется В Форме
Курсовая работа по теме Статистический анализ динамики и структуры кредитного рынка в России
Курсовая работа по теме Функционирование налоговой системы Республики Беларусь
Реферат: Durkheim And Falling Down Essay Research Paper
Контрольная Работа 9 Класс Английский Спотлайт
Сочинение: Изображение народа в поэме "Кому на Руси жить хорошо"
Курсовая работа: Отличительные особенности "пограничных" цивилизаций
Курсовая работа: Правовое регулирование бирж и аукционов
Проспекта Магистерской Диссертации
Оформление Контрольной Работы По Математике
Реферат: Отчет о практике в Детском саде 370
Сочинение Гроза Островский Конфликт Отцов И Детей
Реферат: Отчет по производственной практике в юридическом отделе
Контрольная работа по теме Системи збору нафти, газу та води і вимір продукції свердловин
Курсовая работа: Акцизы
Реферат: Крестьянская реформа начала 20 века
Курсовая работа: Оценка финансового состояния предприятия и пути его улучшения

Report Page