Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
17
Добавлен:
02.06.2015
Размер:
2.32 Кб
Скачать
// ex9_1.cpp
// класс публикаций и порожденные из него
 /*Представьте себе издательскую компанию, которая торгует книгами и 
аудио-записями этих книг. Создайте класс publication, в котором хранятся 
название (строка) и цена (типа float) книги. От этого класса наследуются 
еще два класса: book, который содержит информацию о количестве страниц 
в книге (типа int), и type, который содержит время записи книги в минутах 
(тип float). В каждом из этих трех классов должен быть метод getdata(), 
через который можно получать данные от пользователя с клавиатуры, 
и putdata(), предназначенный для вывода этих данных. 
Напишите функцию main() программы для проверки классов book и type. 
Создайте их объекты в программе и запросите пользователя ввести и вы- 
вести данные с использованием методов getdataQ и putdata(). */


#include <iostream>
#include <string>
using namespace std;
///////////////////////////////////////////////////////////
class publication // базовый класс
{
private:
	string title;
	float price;
public:
	void getdata()
	{
		cout << "\nВведите заголовок:";cin >> title;
		cout << "Введите цену:";cin >> price;
	}
	void putdata()const
	{
		cout << "\nЗаголовок:" << title;
		cout << "\nЦена:" << price;
	}
};
///////////////////////////////////////////////////////////
class book :private publication // порожденный класс
{
private:
	int pages;
public:
	void getdata()
	{
		publication::getdata();
		cout << "Введите число страниц:";cin >> pages;
	}
	void putdata()const
	{
		publication::putdata();
		cout << "\nСтраниц:" << pages;
	}
};
///////////////////////////////////////////////////////////
class tape :private publication // порожденный класс
{
private:
	float time;
public:
	void getdata()
	{
		publication::getdata();
		cout << "Введите время звучания:";cin >> time;
	}
	void putdata()const
	{
		publication::putdata();
		cout << "\nВремя звучания:" << time;
	}
};
///////////////////////////////////////////////////////////
int main()
{
	system("chcp 1251 > nul");

	book book1;                 // определить публикации
	tape tape1;

	book1.getdata();            // получить данные о них
	tape1.getdata();

	book1.putdata();            // вывести данные о них
	tape1.putdata();
	cout << endl;

	return 0;
}
Соседние файлы в папке множ насл