Лабораторная работа №3. Программирование линейных структур данных специального вида Цель работы Приобретение навыков реализации линейных структур данных специального вида: блоковых списков, индексированных списков, индексированных блоковых списков.
Задание кафедры Написать программу, предоставляющую возможность ведения информационного массива данных заданной структуры. Для хранения информационного массива должна использоваться линейная структура данных специального вида (в соответствие с вариантом). Программа должна реализовывать следующие функции:
Добавление новой записи в начало списка Добавление новой записи в конец списка Вставка новой записи на заданную позицию Удаление записи, находящейся на заданной позиции Изменение записи, находящейся на заданной позиции Очистка информационного массива Последовательный поиск записи в информационном массиве Вывод содержимого информационного массива на экран Вывод служебных данных и текущей структуры используемой структуры хранения.
По желанию можно реализовать функции чтения/записи информационного массива из файла/в файл.
-
№ п/п
| Структура записи информационного массива
| Используемая линейная структура
| Ключевое поле | Информационные поля
| 1
| int | char[], float
| Блоковый список (размер блока 5)
| 2
| int[3] | char[], int
| Индексированный список (равномерное индексирование, размер индексной таблицы 5)
| 3
| float | float[], char[]
| Индексированный список (неравномерное индексирование, размер индексной таблицы 4)
| 4
| float[3] | char[], char[]
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 7, размер индексной таблицы 6)
| 5
| char | int[], char
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 6, размер индексной таблицы 5)
| 6
| int | char[], float
| Индексированный список (равномерное индексирование, размер индексной таблицы 8)
| 7
| int[3] | char[], int
| Индексированный список (неравномерное индексирование, размер индексной таблицы 8)
| 8
| float | float[], char[]
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 10, размер индексной таблицы 4)
| 9
| float[3] | char[], char[]
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 7, размер индексной таблицы 5)
| 10
| char | int[], char
| Блоковый список (размер блока 7)
| 11
| char[20] | char[], int, float
| Индексированный список (неравномерное индексирование, размер индексной таблицы 6)
| 12
| int[2] | char[], int[]
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 6, размер индексной таблицы 5)
| 13
| float[3] | int[], char[], float
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 4, размер индексной таблицы 7)
| 14
| float | char[], int
| Блоковый список (размер блока 7)
| 15
| float[3] | int[], int[], char
| Индексированный список (равномерное индексирование, размер индексной таблицы 8)
| 16
| char[20] | char[], int, float
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 6, размер индексной таблицы 5)
| 17
| int[2] | char[], int[]
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 5, размер индексной таблицы 5)
| 18
| float[3] | int[], char[], float
| Блоковый список (размер блока 9)
| 19
| float | char[], int
| Индексированный список (равномерное индексирование, размер индексной таблицы 7)
| 20
| float[3] | int[], int[], char
| Индексированный список (неравномерное индексирование, размер индексной таблицы 8)
| 21
| int | char[], int, float
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 6, размер индексной таблицы 5)
| 22
| int[3] | char[], int[]
| Блоковый список (размер блока 8)
| 23
| float | int[], char[], float
| Индексированный список (равномерное индексирование, размер индексной таблицы 4)
| 24
| float[3] | char[], int
| Индексированный список (неравномерное индексирование, размер индексной таблицы 6)
| 25
| char | int[], int[], char
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 10, размер индексной таблицы 8)
| 26
| int | char[], int, float
| Блоковый список (размер блока 7)
| 27
| int[3] | char[], int[]
| Индексированный список (равномерное индексирование, размер индексной таблицы 10)
| 28
| float | int[], char[], float
| Индексированный список (неравномерное индексирование, размер индексной таблицы 9)
| 29
| float[3] | char[], int
| Индексированный блоковый список (равномерное индексирование блоков, размер блока 4, размер индексной таблицы 7)
| 30
| char | int[], int[], char
| Индексированный блоковый список (неравномерное индексирование блоков, размер блока 6, размер индексной таблицы 5)
|
|