Для студентов по предмету Объектно-ориентированное программирование (ООП)Иерархия классов на основе наследованияИерархия классов на основе наследования
2025-06-262025-06-26СтудИзба
Лабораторная работа: Иерархия классов на основе наследования
Описание
1 Формулировка задачи
Создать класс book (книга), содержащий атрибуты: title (название), author (автор), price (цена), discount (скидка в процентах) и методы: конструктор с параметрами, задающими значения всех атрибутов, причем скидка – параметр, равный по умолчанию нулю; константные методы get_title, get_author, get_price, get_discount, возвращающие значения соответствующих атрибутов; константный метод real_price, вычисляющий цену товара с учетом скидки; методы set_price, set_discount, устанавливающие новые значения цены и скидки.
Создать класс bookshop (книжный магазин), содержащий атрибуты: name (название магазина), books (массив объектов класса book) и методы: конструктор с одним параметром – названием магазина: константные методы чтения названия магазина и определения количества книг в магазине; метод добавления новой книги в магазин; метод поиска самой дешевой книги; метод установки заданной скидки на все книги магазина.
Разработать программу, демонстрирующую работу с объектами этих классов.
2 Техническое задание
2.1 Требования к программе
Программа должна обеспечивать:
2.2 Порядок контроля и приёмки
Для контроля правильности работы программы должны быть разработаны тестовые данные, состоящие из имени магазина и набора книг, их атрибутов. Данные необходимо ввести при работе программы. Вывести количество книг в магазине, указать самую дешевую книгу. Если выведенные данные совпадут с ожидаемыми, то это будет означать, что программа удовлетворяет требованиям технического задания.
Создать класс book (книга), содержащий атрибуты: title (название), author (автор), price (цена), discount (скидка в процентах) и методы: конструктор с параметрами, задающими значения всех атрибутов, причем скидка – параметр, равный по умолчанию нулю; константные методы get_title, get_author, get_price, get_discount, возвращающие значения соответствующих атрибутов; константный метод real_price, вычисляющий цену товара с учетом скидки; методы set_price, set_discount, устанавливающие новые значения цены и скидки.
Создать класс bookshop (книжный магазин), содержащий атрибуты: name (название магазина), books (массив объектов класса book) и методы: конструктор с одним параметром – названием магазина: константные методы чтения названия магазина и определения количества книг в магазине; метод добавления новой книги в магазин; метод поиска самой дешевой книги; метод установки заданной скидки на все книги магазина.
Разработать программу, демонстрирующую работу с объектами этих классов.
2 Техническое задание
2.1 Требования к программе
Программа должна обеспечивать:
- Ввод атрибутов магазина: название магазина, книга;
- Ввод атрибутов книги: название, автор, цена, скидка;
- Рассчёт цены книги с учетом скидки;
- Определения количества книг в магазине, самой дешевой книги в магазине;
- Задание одной скидки для всех книг в магазине
- Вывод атрибутов книги;
- Вывод количества книг в магазине;
- Вывод названия самой дешёвой книги;
2.2 Порядок контроля и приёмки
Для контроля правильности работы программы должны быть разработаны тестовые данные, состоящие из имени магазина и набора книг, их атрибутов. Данные необходимо ввести при работе программы. Вывести количество книг в магазине, указать самую дешевую книгу. Если выведенные данные совпадут с ожидаемыми, то это будет означать, что программа удовлетворяет требованиям технического задания.
Характеристики лабораторной работы
Просмотров
2
Качество
Идеальное компьютерное
Размер
316,97 Kb
Список файлов
otchyot2-1.docx

Все деньги, вырученные с продажи, идут исключительно на шаурму