АиП 2 сем / лаба 11
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ
КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
«Московский технический университет связи и информатики»
Кафедра «Информатика»
Лабораторная работа №11
по теме
«Создание приложений Windows Forms
для формирования и обработки двумерных массивов»
по теме
«Формирование и обработка двумерных массивов»
Выполнил: студент группы БЭИ2203
Малых Д. С.
Проверил: доцент Воробейчиков Л. А.
Москва, 2023 г.
Индивидуальное задание на разработку проекта
Создать проект решения следующей задачи:
Сформировать и вывести в список формы динамический двумерный массив из вещественных случайных чисел в заданном диапазоне;
Если в этом массиве есть строки, в которых – сумма элементов, предшествующих последнему отрицательному элементу j-ого столбца, сформировать новый одномерный массив R(n). Если все элементы j-ого столбца неотрицательны – принять ;
Вывести новый массив в список формы.
Формализация задачи
Из условия задания следует, что его выполнение распадается на следующие этапы, реализуемые соответствующими функциями приложения:
Ввод исходных данных – функция GetInt;
Формирование исходного массива – функция input;
Вывода исходного массива в заданный список формы – функция output;
Создание нового массива R(n)
Заполняем массив следующим образом – сумма элементов, предшествующих последнему отрицательному элементу j-ого столбца, сформировать новый одномерный массив R(n). Если все элементы j-ого столбца неотрицательны – принять . Очевидно, что этот этап необходимо разбить на части:
Вывод нового массива – функция output;
Освобождение памяти сформированных массивов – функция del.
Вызов функции формирования и вывода динамических массивов производится в событийной процедуре по нажатию кнопки Решить.
Разработка графического интерфейса пользователя приложения
Графический интерфейс проекта изображен на рисунке 1.
Рисунок 1 – Графический интерфейс проекта
Разработка схем алгоритмов функций
Схема алгоритма функции task приведена на рисунке 2.
Рисунок 2 – Схема алгоритма функции task
Разработка программного кода приложения
5.1 Файлы с функциями решения поставленной задачи
В данном проекте в соответствии с заданием, помимо автоматически сгенерированных системой файлов, создается два файла с программным кодом функций пользователя:
Файл GetPut.cpp с функциями для ввода, вывода и освобождения динамической памяти, программный код которого приведен на рисунке 3.
Файл task.cpp, программный код которого приведен на рисунке 4.
Рисунок 3 – Программный код файла GetPut.cpp
Рисунок 4 – Программный код файла task.cpp
5.2 Программные коды заголовочных файлов
На рисунке 5 приведен программный код созданного заголовочного файла task.h и системного заголовочного файла stdafx.h.
Рисунок 5 – Программные коды заголовочных файлов
5.3 Событийные процедуры
На рисунке 6 приведены коды событийных процедур.
Рисунок 6 – Программный код событийных процедур в файле Form1.h
Результаты выполнения приложения
На рисунках 7-8 приведены результаты выполнения приложения при различных исходных данных.
Рисунок 7 — Результат 1
Рисунок 8 – Результат 2