Skip to content

TVGneRd/GUAP_PROGRAMMING_TECHNOLOGY

Repository files navigation

GUAP Лабораторная работа №1

Задание:

Создать родительский класс "Очередь" с функциями инициализации очереди, добавления элемента в очередь и извлечения элемента из очереди. Создать метод создания копии очереди. Результатом должен стать новый экземпляр класса “Очередь”, состоящий из элементов (копий элементов) исходной очереди. Порядок следования элементов должен быть сохранен. Создать функцию слияния двух очередей. Результатом должна быть третья очередь, состоящая элементов первой очереди и второй очереди. Порядок следования элементов должен быть сохранен. На основе родительского класса "Очередь" создать три дочерних класса "Очередь1" (по каждому типу наследования: public, protected и private) с функциями нахождения и отображения на экране требуемого в соответствии с вариантом задания значения. В main необходимо работать только с классами-наследниками (должна быть возможность выбора для пользователя с каким наследником необходимо работать), базовый класс не должен быть объявлен в main и использоваться. Внимательно ознакомьтесь с разделом 1 текущего

Приложения. Обязательно к выполнению:

  • Необходимо разделение на h и cpp файлы для каждого класса. Функция main должна располагаться в отдельном cpp файле. Элемент очереди содержит данные и ссылку на предыдущий элемент. Элемент реализовать с помощью класса или структуры.
  • Реализовать динамическое выделение памяти для очереди/элемента очереди и динамическое очищение памяти при извлечении элемента очереди.
  • Заранее число элементов очереди неизвестно, очередь заполняется постепенно пользователем программы.
  • Не принимается очередь, реализованная с помощью STL контейнеров или в виде статического массива.
  • В родительском классе обязательно должно быть три модификатора доступа с объявленными в них полями данных и/или методами. Данные очереди обязаны находиться в области доступа private родительского класса.
  • Реализовать пользовательское меню, например: 1 – Добавление элемента очереди; 2 – Извлечение элемента очереди; 3 – Вывод очереди на экран; 4 – Выполнение расчета по варианту; 5 – Создание копии очереди; 6 – Слияние двух очередей; 7 – Выход из программы.
  • Пользователь с клавиатуры вводит значения.
  • По списку студент определяет свой порядковый номер и этому номеру соответствует задание в таблице

Вариант задания: Подсчет числа элементов, значение которых превышает значение предыдущего элемента.

Управление: Клавиши «ВВЕРХ», «ВНИЗ» - передвижение по пунктам меню. Клавиши «ВЛЕВО», «ВПРАВО» - выбор активной очереди. Клавиша «ENTER - выбор пункта меню

image image image image image

About

Discipline programming technology

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages