ЯП Лабораторная работа №3
.docxФедеральное агентство связи
Ордена Трудового Красного Знамени федеральное государственное бюджетное
образовательное учреждение высшего образования
«Московский технический университет связи и информатики»
Факультет «Сети и Системы Связи»
Кафедра информатики
Лабораторная работа № 3
«Создание приложений Windows Forms для формирования и обработки динамических одномерных массивов»
Вариант 22
Выполнила студент:
Проверил: Доц. Шакин В.Н.
Москва, 2020 г.
Содержание отчета
1.Общее и индивидуальное задание на разработку приложения 3
3
1.1. Общее задание. 3
1.2. Индивидуальный вариант задания. 4
2.Формализация и уточнение задания. 4
3.Разработка графического интерфейса пользователя приложения 5
4.Разработка схем алгоритмов функций 6
5.Разработка программного кода приложения 10
5.1. Файлы c функциями решения поставленной задачи 10
5.2. Программные коды заголовочного файла task.h и отредактированного программного кода системного заголовочного файла stdafx.h. (рис. 8,9) 12
5.3. Событийные процедуры. 13
6.Выполнение и результаты работы проекта 14
7.Доказательство правильности результатов 15
1.Общее и индивидуальное задание на разработку приложения
1.1. Общее задание.
Изучите вопросы использования указателей и программирования алгоритмов формирования и обработки одномерных динамических массивов.
Выберите вариант задания из таблицы 1.
Разработайте проект графического интерфейса пользователя.
Решите поставленную задачу формирования и обработки динамических массивов. Для этого разработайте схемы алгоритмов и программные коды следующих функций:
функции ввода и контроля дополнительных данных (при наличии таких данных в индивидуальном задании);
функции ввода элементов исходного массива из многострочного текстового поля, создания и формирования динамического массива из этих элементов;
функции создания нового динамического одномерного массива согласно вашему индивидуальному заданию.
функции вывода динамического одномерного массива в элемент управления ListBox.
Разработайте программный код событийной процедуры, которая вызывает описанные выше функции для решения поставленной задачи.
Создайте проект приложения Windows Form, содержащий:
графический интерфейс;
файлы с раздельно откомпилированными программными кодами функций, необходимых для решения задачи:
функций ввода данных, создания и формирования массива и вывода результатов;
функций, решающих поставленную задачу.
заголовочный файл с прототипами разработанных функций;
событийную процедуру, которая должна содержать только операторы вызова пользовательских функций.
Подготовьте тесты для контрольного решения задачи, предусмотрев различные значения исходного массива данных для решения.
Выполните проект и получите результаты.
Докажите правильность полученных результатов на заранее разработанных тестах.
1.2. Индивидуальный вариант задания.
2.Формализация и уточнение задания.
Из условия задания следует, что его выполнение распадается на следующие этапы, реализуемые соответствующими функциями приложения:
• формирование исходного массива чтением чисел из многострочного текстового поля формы – функция input;
функции min, которая находит минимальный элемент массива;
функции koli подсчёта элементов равных минимуму;
функции task решения задачи формирования нового массива, в котором находятся все отрицательные элементы исходного массива, идущие после k-ого элемента, кроме элементов, равных минимальному;
Вызов функций формирования динамических массивов и вывода нового массива производится в событийной процедуре по нажатию кнопки Решить задачу.
3.Разработка графического интерфейса пользователя приложения
Графический интерфейс проекта изображен на рисунке 1.
Рисунок 1 – Графический интерфейс проекта
На форме слева создано одно многострочное текстовое поле txtMas1 для ввода значений элементов исходного массива mas1 и список ListBox с именем lstMas2 – для вывода сформированного массива mas2. Числа для исходного массива будут во время работы приложения записываться в многострочное текстовое поле (элемент управления TextBox). Для создания многострочного текстового поля, необходимо изменить значение его свойства Multiline, заданное по умолчанию, с False на True, и затем растянуть его по высоте.
Также на форме расположены кнопки Решить задачу (cmdTask) для запуска программы на выполнение и Завершить (cmdExit) для останова ее выполнения.
4.Разработка схем алгоритмов функций
Схемы алгоритмов функций представлены на рисунках 2,3,4,5
Рисунок 2 – Схема алгоритма функции min() нахождения минимального элемента массива
Рисунок 3 – Схема алгоритма функции koli подсчёта элементов равных минимуму
Рисунок 4 – Схема алгоритма функции task() ,формирующей новый массив
Рисунок 5 – Схема иерархии процедур
5.Разработка программного кода приложения
5.1. Файлы c функциями решения поставленной задачи
В данном проекте в соответствии с заданием создается два файла с
программным кодом функций пользователя:
- файл GetPut_din.cpp(см. рис.6) с функциями для ввода и вывода;
- файл Task.cpp, содержащий функции min,koli,task, необходимые для решения поставленной задачи.
Рисунок 6 – Программный код файла GetPut_din.cpp
Рисунок 7 – Программный код файла Task_din.cpp с функциями решения задачи
5.2. Программные коды заголовочного файла task.h и отредактированного программного кода системного заголовочного файла stdafx.h. (рис. 8,9)
Рисунок 8 – Программный код заголовочного файла task_din.h
Рисунок 9 – Программный код заголовочного файла stdafx.h
5.3. Событийные процедуры.
В данной работе создаются две событийные процедуры, вызываемые при нажатии кнопок cmdTask (Решение) и cmdExit (Выход). Напомним, что для создания заготовок этих процедур следует, находясь в окне Form1.h [Конструктор], выполнить двойной щелчок мышью на соответствующих кнопках, а затем заполнить тело процедур соответствующим кодом. На рис. 10 приведен код этих процедур, вставляемых в файл Form1.h после директивы #pragma endregion.
Рисунок 10 – Часть программного кода файла Form1.h
6.Выполнение и результаты работы проекта
На рис. 11 приведены результаты выполнения приложения при различных исходных данных.
Рисунок 11 – Результаты работы проекта
7.Доказательство правильности результатов
В исходном массиве находятся как положительные, так и отрицательные элементы ,так что формирование нового массива возможно, что и представлено на рисунке 11.
Список использованных источников
1. Оформление лабораторной работы [Электронный ресурс] / Поисковая система Google, 2020. URL: https://google.com
2. Скачивание программы Microsoft Visual Studio.NET 2010 с лицензией [Электронный ресурс] / Поисковая система Yandex, 2020. URL: https://vamsoft-torrent.ru/2019/03/14/microsoft-visual-studio-2010-c-skachat-64-windows-7-8-10/
3. Оформление схемы алгоритмов – программа Microsoft Visio 2010 [Электронный ресурс] / Поисковая система Yandex, 2020. URL: http://thevisios.ru/
4.Microsoft Visual Studio.NET 2010
5.Microsoft Visio 2010