|
0 / 0 / 0
Регистрация: 12.02.2017
Сообщений: 3
|
||||||
система классов, вывод в стандартную консоль12.02.2017, 15:46. Показов 723. Ответов 0
Метки нет (Все метки)
добрый день. подскажите пж-ста. есть на c# программа ее необходимо перевести в c++.
Программа выводит список товаров условного Интернет-магазина в поток стандартного вывода таким образом, чтобы товары были сгруппированы в соответствии с иерархией категорий и подкатегорий. Список товаров задаётся в программе любым способом (например, жёстко зашит в коде). О каждом товаре выдаётся полная информация (печатаются все его свойства). Категории и свойства товаров: Книги и диски. Книги бывают по программированию, кулинарии и эзотерике. У всех товаров есть название (строка), цена (число) и штрих-код (строка). У всех книг – количество страниц (число). У книг по программированию – язык программирования (строка). У книг по кулинарии – основной ингредиент (строка). У книг по эзотерике – минимальный возраст читателя (число). Диски бывают CD и DVD.*Независимо от типа диска, его содержимым может быть: музыка, видео, ПО. Кликните здесь для просмотра всего текста
Кликните здесь для просмотра всего текста
#include <iostream>
#include <string> #include <list> using namespace std; class Goods { public: string weight; //Вес protected: string Title, BarCode; protected: double Price; public: Goods(string title, string barCode, double price) { Title = title; BarCode = barCode; Price = price; } public: virtual void display() { cout << ("Название:{0}", Title); cout << ("Цена:{0}", Price); cout << ("Штрих-код:{0}", BarCode); } }; class Book : Goods { protected: int NumPages; public: Book(string title, string barCode, double price, int numPages) : Goods(title, barCode, price) { NumPages = numPages; weight = "1"; }; public: virtual void display() { Goods::display(); cout << ("Количество страниц:{0}", NumPages); } }; class devBook : Book { private: string Language; public: devBook(string title, string barCode, double price, int numPages, string language) : Book(title, barCode, price, numPages) { Language = language; weight += ".1"; }; public: virtual void display() { cout << ("Книга по программированию"); cout << ("Язык программирования:{0}\n", Language); Book::display(); } }; class cookBook : Book { private: string MainIngredient; public: cookBook(string title, string barCode, double price, int numPages, string mainIngredient) : Book(title, barCode, price, numPages) { MainIngredient = mainIngredient; weight += ".2"; } public: virtual void display() { cout << ("Книга по кулинарии"); Book::display(); cout << ("Главный ингридиент:{0}\n", MainIngredient); } }; class spiritBook : Book { private: int MinAge; public: spiritBook(string title, string barCode, double price, int numPages, int minAge) : Book(title, barCode, price, numPages) { MinAge = minAge; weight += ".3"; } public: virtual void display() { cout << ("Книга по эзотерике\n"); Book::display(); cout << ("Минимальный возраст читателя:{0}\n", MinAge); } }; enum DiscType {CD, DVD}; class Disc : Goods { protected: DiscType Type; public: Disc(string title, string barCode, double price, DiscType type) : Goods(title, barCode, price) { Type = type; weight = "2"; } public: virtual void display() { cout << ("Тип диска:{0}", Type); Goods::display(); } }; class musicDisc : Disc { public: musicDisc(string title, string barCode, double price, DiscType type) : Disc(title, barCode, price, type) { weight += ".1"; }; public: virtual void display() { cout << ("Музыкальный диск"); Disc::display(); cout << (""); } }; class videoDisc : Disc { public: videoDisc(string title, string barCode, double price, DiscType type) : Disc(title, barCode, price, type) { weight += ".2"; } public: virtual void display() { cout << ("Видео диск \n"); Disc::display(); } }; class softwareDisc : Disc { public: softwareDisc(string title, string barCode, double price, DiscType type) : Disc(title, barCode, price, type) { weight += ".3"; } public: virtual void display() { cout << ("Диск с ПО"); Disc::display(); cout << (""); } }; int main() { //объявление объекта //имя класса-имя объекта //имя объекта-вызов функции List<Elem> ListOfGoods = new List<Elem>(); ListOfGoods.Add(new cookBook("100 блюд в казане", "123/123", 249.99, 400, "Рис")); ListOfGoods.Add(new musicDisc("MUSE - The 2nd law", "432-123", 400, DiscType.CD)); ListOfGoods.Add(new softwareDisc("Windows 8", "123-213", 4000.99, DiscType.DVD)); ListOfGoods.Add(new softwareDisc("AutoCAD", "123-312", 1500, DiscType.DVD)); ListOfGoods.Add(new devBook("CLR via C#", "12312-32", 3000, 900, "C#")); ListOfGoods.Add(new devBook("Pro C# 5.0 and the .NET 4.5 Framework", "12321-213", 2000, 1500, "C#")); ListOfGoods.Add(new videoDisc("Inception", "123-213-2", 1000, DiscType.DVD)); ListOfGoods.Add(new spiritBook("Духи в каждом предмете", "213-32", 1230, 800, 18)); ListOfGoods.Add(new musicDisc("Daft Punk - Discovery", "232", 399.99, DiscType.CD)); ListOfGoods.Add(new cookBook("Тортики на любой вкус!", "2312", 100, 200, "Радуга")); ListOfGoods.Sort((a, b) = > a.weight.CompareTo(b.weight)); foreach(var Item in ListOfGoods) { Item.display(); } cout << (""); } Добавлено через 3 минуты непонятно как в list это все дело запихать. и почему недоступен weight в других классах.
0
|
||||||
| 12.02.2017, 15:46 | |
|
Ответы с готовыми решениями:
0
Изменить стандартную панель управления (консоль) на WordPress Буферизация вывода в консоль, и цветной вывод в консоль
|
| 12.02.2017, 15:46 | |
|
Помогаю со студенческими работами здесь
1
Создать взаимодействие классов с выводом на консоль Реализовать вывод массива объектов типа Student на консоль (файловый ввод/вывод) система классов Система классов визуального интерфейса Запись данных в поток вывода на консоль, или могут ли быть объекты у абстрактных классов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|