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