Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Гурик / Лабораторная работа №6.docx
Скачиваний:
2
Добавлен:
01.04.2022
Размер:
1.14 Mб
Скачать

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

«Запись одномерных массивов в базу данных Microsoft Access»

Оглавление

Y

1. Задание на лабораторную работу 3

2. Формализация 5

3. Заставка к лабораторной работе 6

4. Схема алгоритма решения задачи 7

5. Листинг программы 16

5.1 Листинг основной программы 16

.2 Листинг dll библиотеки 17

6 Тестирование программы 22

Список использованной литературы: 26

  1. Задание на лабораторную работу

Задача: Разработать проект с двумя формами. Первая форма – заставка к приложению, вторая – решение задания лабораторной работы. Заставка в первой форме должна быть реализована при помощи надписи. Кроме этого разработать функцию VSTAVKA, PROSOYVSTAVKA,add,add_struct,add_zap entermas,kiks и outputmas типа void , которые будут находиться в dll библиотеке.

Дан целочисленный массив, элементы которого могут принимать неотрицательные целые значения до 10000 включительно. Необходимо произвести метод вставки элемента массива и отдельно вывести массив с данным результатом, а также произвести сортировку исходного массива методом простой вставки и также вывести массив с данным результатом. После этого нужно вывести результаты данной программы в базу данных.

Вставка элементов массива осуществляется следующим образом:

1) Первые k элементов массива остаются без изменения;

2) Все элементы, начиная с (k - 1)-го необходимо сдвинуть вправо, чтобы

освободить место для вставляемого элемента;

3) Элементу с номером k присвоить значение m. Количество элементов

массива увеличить на 1.

Сортировка массива простой вставкой осуществляется следующим образом:

Пусть имеется массив a[1], a[2], ..., a[n]. Пусть элементы a[1], a[2], ..., a[i

– 1] уже отсортированы, и пусть имеем входную последовательность a[i], a[i

+ 1], ..., a[n]. На каждом шаге, начиная с i = 2 и увеличивая i на единицу, берем i-й элемент входной последовательности и вставляем его на подходящее место в уже отсортированную часть последовательности. Вставляемый элемент - х. Начальный массив 32 64 9 30 87 14 2 76.

i = 2 х = 64. Ищем для х подходящее место, считая, что а[1] = 32 — это уже отсортированная часть последовательности. Получаем 32 64 9 30 87 14 2 76.

i=3 х=9. Ищем для х подходящее место: 9 32 63 30 87 14 2 76.

i = 4 х = 30. Ищем для х подходящее место: 9 30 32 64 87 14 2 76.

i = 5 х = 87. Ищем для х подходящее место: 9 30 32 64 87 14 2 76.

i = 6 х = 14. Ищем для х подходящее место: 9 14 30 32 64 87 2 76.

i=7 х=2. Ищем для х подходящее место: 2 9 14 30 32 64 87 76.

i = 8 х = 76. Ищем для х подходящее место: 2 9 14 30 32 64 76 87.

При поиске подходящего места для элемента х чередуются сравнения и

пересылки.

«Просеивание» может закончиться при двух различных условиях:

1) Найден элемент, значение которого больше, чем х;

2) Достигнут конец последовательности.

Для выполнения лабораторной работы требуется разработать:

  1. Заставку в первой форме, которая должна быть реализована при помощи надписи.

  2. Функцию kiks типа void с параметрами (int* a, int len,TextBox^s, TextBox^ k, TextBox^ d, TextBox^ n), в которой будет происходить основные вычисления программы: нахождения количества четных и нечетных элементов, а также подсчет всех перемноженных значений четных цифр и отдельно нечетных цифр.

  3. Функцию outputmas типа void с параметрами (int* a, int len, DataGridView^ dgv), в которой будет происходить вывод массива, а также будут вноситься дополнительные под настройки для datagridview1 .

  4. Функцию entermas типа void с параметрами (int* mas, int n), в которой будет происходить генерация массива.

  5. Функцию VSTAVKA типа void с параметрами (int k, int* mas, int n, int m), в которой будет вставка элементов массива.

  6. Функцию PROSOYVSTAVKA типа void с параметрами (int* mas, int n), в которой будет происходить сортировка массива с помощью метода простой вставки.

  7. Функцию add типа void, в которой будет происходить создание базы данных

  8. Функцию add_struct типа void, в которой будет происходить создание структуры базы данных

  9. Функцию add_zap типа void с параметрами (int* mass, int* rezmas, int* rezmas1, int len), в которой будет происходить заполнение базы данных.

  10. Разработать dll библиотеку, в которой будут находиться функция: kiks, outputmas, entermas,VSTAVKA,PROSOYVSTAVKA.

  11. Событийную в которой будет происходить считывание данных через MessageBox и генерация массива, а также будет происходить запуск функции kiks и outputmas.