Целью данной курсовой работы является разработка программного модуля, с помощью которого можно задать размерность квадратной матрицы, заполнить матрицу случайными целыми числами от 0 до 6 и вычислить: - сумму элементов, находящихся под главной диагональю, - сумму элементов, составляющих главную диагональ. Для разработки программы использован табличный процессор Excel и язык программирования Visual Basic for Application. В первом разделе, который называется «Постановка задачи», приведена математическая модель задачи, описаны входные и выходные данные, описана обработка ошибок. Во втором разделе, «Проектирование программного модуля», изображена структурная диаграмма программного модуля, разработана схема программного модуля и пользовательский интерфейс. В разделе «Реализация программного модуля» описан код программы, произведено описание используемых операторов и функций. Тестирование программного модуля приведено в четвертом разделе. Кроме того, дано заключение и приведён список использованных источников.
1. Постановка задачи 1.1 Математическая модель задачи Определение квадратной матрицы: квадратной матрицей n-го порядка называется матрица, состоящая из m строк и m столбцов. Главной диагональю квадратной матрицы называется диагональ, составленная из элементов a11 a22 … amm . Способ нахождения суммы элементов квадратной матрицы, лежащих под главной диагональю: Необходимый результат получается при суммировании элементов в следующем порядке: а21 + а31 + а32 +…+ аi1 + ai2 + ai3 + ai(j-1) – суммируются элементы, начиная со второй строки, и, при увеличении строки на 1, число столбцов, содержащих нужные элементы, также увеличивается на 1. В кратком виде этот цикл выглядит так: i=f…m, где начальное f=2; j=1…(m-b), где начальное b=m-1. При каждой последующей итерации значение f увеличивается на 1, а значение b на 1 уменьшается. Сумму элементов диагонали матрицы можно получить при суммировании элементов, лежащих на пересечении одинаковых строки и столбца, т.е. если i=j. 1.2 Входные данные В данном курсовом проекте к входным данным относится размерность квадратной матрицы (значение m). Требования к входным данным: - значение m должно вводиться в числовой форме; - значение m должно быть целым, положительным числом больше нуля.
1.3 Выходные данные К выходным данным относятся: - вывод заполненной матрицы на форму; - вывод заполненной матрицы на лист Excel; - сумма элементов, находящихся под главной диагональю; - сумма элементов, составляющих главную диагональ. Требования к выходным данным: - выходные данные выводятся в числовом виде. 1.4 Обработка ошибок При выполнении программного модуля произведена обработка следующих ошибок: - в поле ввода размерности матрицы вводится нечисловое значение. В этом случае появляется сообщение об ошибке, которое имеет вид, представленный на рисунке 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:
1 2 3 4 5 6 7 8
9 Рисунок 5 – Схема программного модуля (Заполнение матрицы) Описание блок-схемы: 1 – ввод размера массива; 2 – проверка того, что введённый размер массива является числом; 3 – проверка того, что введённый размер массива является положительным числом, отличным от нуля; 4 – проверка того, что введённый размер массива является целым числом; 5 – задание динамического массива; 6 – цикл, который пробегает значения строк от 1 до заданного размера массива, с шагом равным по умолчанию 1; 7 – цикл, который пробегает значения столбцов от 1 до заданного размера массива, с шагом равным по умолчанию 1; 8 – тело цикла, которое заполняет массив случайными числами от 0 до 6; 9 – вывод результата в поле, предназначенное для вывода квадратной матрицы.
Курсовые работы по информатикеЦелью данной курсовой работы является разработка программного модуля, с помощью которого можно задать размерность квадратной матрицы, заполнить
Оценок: 421 (Средняя 5 из 5)
Специалисты RetsCorp работают в digital-сфере более 7 лет. За это время мы разработали более 500+ успешных проектов. Основываясь на своем опыте и знании рынка, мы с уверенностью можем сказать, что будет работать, а что — нет. Заказывая создание лендинга для бизнеса в нашей студии, вы получаете работающие решения, необходимые именно вашему бизнесу.
Сотрудничая с нами, вы будете не клиентом, а нашим партнером. Благодаря этому мы будем развивать ваш бизнес как собственный. Мы так же как и вы заинтересованы в успехе проекта, поскольку ваша успешность будет нашей рекламой.