Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЯП Лабораторная работа №2.docx
Скачиваний:
4
Добавлен:
14.01.2023
Размер:
1.81 Mб
Скачать

Федеральное агентство связи

Ордена Трудового Красного Знамени федеральное государственное бюджетное

образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

Факультет «Сети и Системы Связи»

Кафедра информатики

Лабораторная работа № 2

«Понятие структурированных данных. Определение массивов и индексация их элементов. Статические одномерные массивы»

Вариант 22

Выполнила студент:

Проверил: Доц. Шакин В.Н.

Москва, 2020 г.

Содержание отчета

2

1. Общее задание. 2

1.2. Индивидуальный вариант задания. 3

2.Формализация и уточнение задания. 4

3. Разработка графического интерфейса пользователя приложения 8

1. Общее задание.

1) Изучите вопросы программирования алгоритмов формирования и обработки одномерных массивов.

2) Выберите вариант задания из таблицы 1.

3) Разработайте проект графического интерфейса пользователя.

4) Решите поставленную задачу формирования и обработки статических массивов. Для этого разработайте схемы алгоритмов и программные коды следующих функций:

 функции ввода исходных данных, предусмотрев контроль значений исходных данных;

 функции формирования одномерного массива из случайных чисел в заданном диапазоне;

 функции создания нового одномерного массива согласно вашему индивидуальному заданию. При необходимости разбейте эту функцию на ряд вспомогательных функций;

 функции вывода одномерного массива в элемент управления ListBox.

5) программный код событийной процедуры, которая вызывает описанные выше функции для решения поставленной задачи.

6) Создайте проект приложения Windows Form, содержащий:

 графический интерфейс;

 файлы с раздельно откомпилированными программными кодами функций, необходимых для решения задачи: o функций ввода исходных данных, формирования исходного массива и вывода результатов; o функций, решающих поставленную задачу.

 событийную процедуру, которая должна содержать только операторы вызова пользовательских функций.

7) Подготовьте тесты для контрольного решения задачи, предусмотрев различные значения исходного массива данных для решения. Для проверки работы функции создания нового массива при различных значениях исходного массива рекомендуется в событийной процедуре проинициализировать исходный массив списком подготовленных значений и выполнить проект для этих тестовых значений, а затем удалить (закомментировать) инициализацию массива списком.

8) Выполните проект и получите результаты.

9) Докажите правильность полученных результатов на заранее разработанных тестах.

1.2. Индивидуальный вариант задания.

2.Формализация и уточнение задания.

Для реализации проекта необходимо разработать схемы алгоритмов и программные коды четырёх функций:

 функции min, которая находит минимальный элемент массива;

функции koli подсчёта элементов равных минимуму;

 функции task решения задачи формирования нового массива, в котором находятся все отрицательные элементы исходного массива, идущие после k-ого элемента, кроме элементов, равных минимальному;

Схемы алгоритмов функций представлены на рисунках 1,2,3,4

Рисунок 1 – Схема алгоритма функции min() нахождения минимального элемента массива

Рисунок 2 – Схема алгоритма функции koli подсчёта элементов равных минимуму

Рисунок 3 – Схема алгоритма функции task() ,формирующей новый массив

Рисунок 4 – Схема иерархии процедур

3. Разработка графического интерфейса пользователя приложения

Графический интерфейс проекта изображен на рисунке 5.

Форма содержит текстовые поля TextBox для ввода исходных данных (размера массива и диапазона случайных чисел), два списка ListBox для вывода значений исходного и нового массивов, а также кнопки Button для запуска приложения на выполнение и для выхода из приложения.

Рисунок 5 – Графический интерфейс проекта

Таблица 1.

Тип

объекта

Класс объекта

Свойство

Значение свойства

Форма

Form

Name

Form1

Text

Одномерные массивы

Текстовое

поле

TextBox

Name

txtN

Font

Размер 12pt Arial

TextAlign

Right

TabIndex

1

Текстовое

поле

TextBox

Name

txtA

Font

Размер 12pt Arial

TextAlign

Right

TabIndex

2

Текстовое

поле

TextBox

Name

txtB

Font

Размер 12pt Arial

TextAlign

Right

TabStop

False

Enabled

False

Кнопка

Button

Name

cmdTask

Font

Размер 12pt; Arial

Text

Решение

TabIndex

3

Кнопка

Button

Name

cmdExit

Font

Размер 12pt, Arial

Text

Завершить

TabIndex

4

Список

ListBox

Name

lstMas1

Font

Arial; 12pt

TabStop

False

ScrollAlwaysVisible

True

Список

ListBox

Name

lstMas2

Font

Arial; 12pt

TabStop

False

ScrollAlwaysVisible

True

BorderStyle

FixedSingle

Текстовое

поле

TextBox

Name

txtK

Font

Размер 12pt Arial

TextAlighn

Right

TabStop

False

Enabled

False