Вариант 9
Написать программу «Автоматизированная информационная система на железнодорожном вокзале». Информационная система содержит сведения об отправлении поездов дальнего следования. Для каждого поезда указывается: номер поезда, станция назначения, время отправления.
Программа должна обеспечивать выбор с помощью меню и выполнение одной из следующих функций:
ввод данных в информационную систему;
вывод сведений по всем поездам;
вывод сведений по поезду с запрошенным номером;
вывод сведений по тем поездам, которые следуют до запрошенной станции назначения.
Хранение данных организовать с применением класса «двусвязный список». Предусмотреть сохранение всех данных при выходе в файл и восстановление при повторном запуске программы.
Вариант 10
Написать программу «Англо-русский и русско-английский словарь». «База данных» словаря должна содержать синонимичные варианты перевода слов. Программа должна обеспечивать выбор с помощью меню и выполнение одной из следующих функций:
Загрузка «базы данных» словаря (из файла).
Выбор режима работы:
англо-русский;
русско-английский.
Вывод вариантов перевода заданного английского слова.
Вывод вариантов перевода заданного русского слова.
Базу данных словаря реализовать в виде двух контейнеров типа «коллекция ключ-значение».
Вариант 11
Написать программу, реализующую игру «Крестики-нолики» между двумя игроками: пользователем и компьютером (роботом). В программе использовать двусвязные списки.
Вариант 12
Написать программу, решающую игру-головоломку «Игра в 15». Начальное размещение номеров — случайное. Предусмотреть два режима демонстрации решения: непрерывный (с некоторой задержкой визуализации) и пошаговый (по нажатию любой клавиши). В программе использовать двусвязные списки.
Вариант 13
Составить программу формирования списка кандидатов, участвующих в выборах губернатора. Каждая заявка от кандидата содержит: фамилию и инициалы, дату рождения, место рождения, индекс популярности.
Программа должна обеспечивать выбор с помощью меню и выполнение одной из следующих функций:
Добавление заявки в список кандидатов. Для ввода индекса популярности (значение указано в скобках) предусмотреть выбор с помощью подменю одного из следующих вариантов:
поддержан президентом (70);
поддержан оппозиционной партией (15);
оппозиционный кандидат, который снимет свою кандидатуру в пользу кандидата № 1 (10);
прочие (5).
Удаление заявки по заявлению кандидата.
Формирование и вывод списка для голосования.
Хранение данных организовать с применением класса «очередь с приоритетом». Для надлежащего функционирования очереди с приоритетами побеспокоиться о надлежащем определении операции < (меньше) в классе, описывающем заявку кандидата. Формирование и вывод списка для голосования реализовать посредством выборки заявок из очереди.
Вариант 14
Написать программу моделирования работы автобусного парка. Сведения о каждом автобусе содержат: номер автобуса, фамилию и инициалы водителя, номер маршрута. Программа должна обеспечивать выбор с помощью меню и выполнение одной из следующих функций:
формирование данных об автобусах в парке;
имитация выезда автобуса из парка: вводится номер автобуса; программа удаляет данные об этом автобусе из списка автобусов, находящихся в парке, и записывает эти данные в список автобусов, находящихся на маршруте;
имитация въезда автобуса в парк: вводится номер автобуса; программа удаляет данные об этом автобусе из списка автобусов, находящихся на маршруте, и записывает эти данные в список автобусов, находящихся в парке;
вывод сведений об автобусах, находящихся в парке, и об автобусах, находящихся на маршруте.
Для представления необходимых списков использовать класс «коллекция ключ-значение», в качестве ключа использовать «номер автобуса». Предусмотреть сохранение всех данных при выходе в файл и восстановление при повторном запуске программы.
