Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая / задания.doc
Скачиваний:
8
Добавлен:
26.03.2016
Размер:
113.15 Кб
Скачать

Задание 5. Бинарное дерево

Разработать программу, реализующую алгоритм бинарного дерева (20 элементов). В качестве элемента дерева выбрать структуру, соответствующую индивидуальному варианту. При заполнении дерева элементы должны располагаться в отсортированном порядке согласно ключу.

Предусмотреть заполнение дерева из файла (подготовить файл на 20 элементов).

Предусмотреть многоуровневое меню:

  1. Заполнение дерева с начала

    1. с консоли (циклически)

    2. из файла (выбор файла, тек. папка, любая папка)

  2. Вставка элемента (с консоли) в дерево

    1. в конец списка

    2. вслед за указанным элементом (по ключу)

  3. Удаление элемента по ключу

  4. Очистка дерева (с выводом удаляемых элементов)

    1. безвозвратно

    2. с сохранением в файл

  5. Вывод дерева

    1. на экран

    2. в файл

  6. Вывод количества элементов

  7. Выход

Реализовать алгоритм обработки исключений.

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

Задание 6. Сортировка структур

Разработать программу, реализующую сортировку массива структур (50 элементов). В качестве элемента массива выбрать структуру, соответствующую индивидуальному варианту. Предусмотреть заполнение массива из файла (подготовить файл на 50 элементов).

Программа должна реализовать не менее 3-х алгоритмов сортировки (на выбор программиста). При этом алгоритм сортировки, направление сортировки (по возрастанию/по убыванию), ключ сортировки (одно или несколько полей) и длину ключа (для текстовых полей) выбирает пользователь. Выполнить сравнительный анализ для различных алгоритмов сортировки (скорость выполнения, количество сравнений, количество перестановок). Отсортированный массив и результаты анализа хранить в текстовых файлах.

Предусмотреть многоуровневое меню:

  1. Заполнение массива из файла (выбор файла, тек. папка, любая папка)

  2. Выбор алгоритма сортировки

  3. Выбор ключевого поля (или нескольких полей – до 3-х)

  4. Установка длины ключа (для текстовых полей)

  5. Сохранение результата

  6. Вывод сравнительного анализа последних сортировок

    1. на экран

    2. в файл

  7. Выход

Задание 7. Обработка множеств

Разработать программу, реализующую обработку нескольких массивов структур (до 5 массивов по 10 элементов) по примеру множеств. В качестве элемента массива выбрать структуру, соответствующую индивидуальному варианту. Предусмотреть заполнение массивов из файлов (подготовить 5 файлов на 10 элементов каждый).

Программа должна реализовать следующие операции с множествами: объединение, пересечение, левостороннее и правостороннее объединения. Результат операции хранить в файле.

Предусмотреть многоуровневое меню:

  1. Заполнение массива из файла (выбор файла, тек. папка, любая папка).

  2. Выбор операции

  3. Завершение либо переход к пункту 1

  4. Вывод результата

    1. на экран

    2. в файл

  5. Выход

Информационное содержание структуры:

    1. Абонент телефонной станции

      1. Номер телефона (ключ)

      2. Фамилия И.О.

      3. Адрес

      4. К-во минут

      5. Суммарная стоимость

    2. Товар

      1. № по каталогу (ключ)

      2. Наименование

      3. Единица измерения

      4. Количество

      5. Цена

    3. Студент

      1. № группы (ключ)

      2. № зачетки (ключ)

      3. Фамилия

      4. Имя

      5. Отчество

      6. Средний балл

    4. Автомобиль

      1. Марка (ключ)

      2. Модель (ключ)

      3. Цвет

      4. Год выпуска

      5. Цена

    5. Книга

      1. Шифр (ключ)

      2. Автор

      3. Название

      4. Издательство

      5. Год издания

    6. Факультет

      1. Код (ключ)

      2. Название

      3. Фамилия И.О. декана

      4. К-во кафедр

      5. К-во преподавателей

    7. Ж/д билет

      1. Номер (ключ)

      2. Станция отправления

      3. Станция назначения

      4. Дата/время отправления

      5. Дата/время прибытия

    8. Сотрудник

      1. Табельный номер (ключ)

      2. Фамилия И.О.

      3. Должность

      4. Год поступления на работу

      5. Оклад

    9. Магазин

      1. Номер (ключ)

      2. Название

      3. Фамилия И.О. директора

      4. К-во сотрудников

      5. Годовой доход

    10. Счет

      1. Номер (ключ)

      2. Вид услуги

      3. Количество

      4. Цена

      5. Дата оказания услуги