Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Blue
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 12
#1

Описать базовый класс "книга" - C++

15.11.2012, 16:55. Просмотров 865. Ответов 3
Метки нет (Все метки)

Помогите пожалуйста описать базовый класс "книга". Написать поиск по автору и году выпуска
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 16:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать базовый класс "книга" (C++):

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс" - C++
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об издании, а также определить является ли данное...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...

Базовый класс "Источник напряжения", производные классы "Цепь" и "Аккумулятор" - C++
Дали задачу по программированию: составить класс "Источник напряжения", для которого нужно реализовать два производных класса: "Цепь" и...

Базовый класс "многоугольник" и производные классы "треугольник" и "прямоугольник" - C++
Не могу понять как реализовать данное задание. Создать 1 базовый класс и несколько производных.Все небольшие ф-ии сделать встроенными...

Описать класс "Книга" - C++
Описать класс «Книга». Предусмотреть возможность работы с произвольным числом книг, поиска книги по любому признаку (автор, название, год...

typeid определяет тип указателя на базовый класс, как тип "базовый класс". Вне зависимости от присвоенного ему значения - C++
Вот код: #include <iostream> #include <string> #include <conio.h> #include <windows.h> #include <typeinfo> using...

3
taras atavin
3570 / 1754 / 91
Регистрация: 24.11.2009
Сообщений: 27,567
15.11.2012, 17:00 #2
ну хоть декларацию попробуй сам сделать
0
Blue
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 12
15.11.2012, 18:17  [ТС] #3
проверьте кто-нибудь мой недокласс
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>
#include <string>
using namespace std;
class Book
{
    private:
        string name;
        string avtor;
        int data;
        int price;
    public:
        Book(int schet, string name, string schetf, int sum, string vid);//конструктор инициализации
        Book ();//конструктор по умолчанию
         ~Book ();//деструктор
         void output();
string getName(){return name;}
        string getData(){return name;}
};
 
//реализация
Book:: Book(string name, string avtor, int data, int price)
)
 {
    this->name=name;
    this->avtor=avtor;
    this->data=data;
    this->price=price;
 }
 
Book:: Book ()
 {
    name=” ”;
    avtor=” ”
    data=0;
    price=0;
 
 }
 
Book::~ Book()
 {
     cout<<"Обьект удален"<<endl;
 }
 
void Book::output()
{
    cout<<name<<endl;
    cout<<avtor<<endl;
    cout<<data<<endl;
    cout<<price<<endl;
}
 
class Books
{
    public:
        Book *mas[100];
        int count;
        Books()
        {
            count = 0;  
        }
        void addNewBook(string name, string avtor, int data, int price);
        void outputAll();
        void searchForName();
        void searchForData();
 
    
    
};
 
 //реализация
 void Books::addNewBook(int schet, string name, string schetf, int sum, string vid)
 {
    mas[count] = new Book(name, avtor, data, price);
    count++;
 }
 
 
 
 void Books::outputAll()
 {
    
        for (int i=0;i<count;i++)
        {
            mas[count]->output();
        }
 }
 
 void Books::searchForName()
 {
    cout<<"Введите имя"<<endl;
    string name;
    cin>>name;
    for (int i=0;i<count;i++)
    {
        if(mas[i]->getName() == name) mas[i]->output();
    }
 }
 
 void Books::searchForData()
 {
    cout<<"Введите год выпуска книги"<<endl;
    int data;
    cin>>name;
    for (int i=0;i<count;i++)
    {
        if(mas[i]->getData()==data) mas[i]->output();
    }
 }
 
 
int main()
{
    
    return 0;
}
0
I.M.
566 / 549 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
15.11.2012, 18:23 #4
используйте теги
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>
 #include <string>
 using namespace std;
 class Book
 {
 private:
 string name;
 string avtor;
 int data;
 int price;
 public:
 Book(int schet, string name, string schetf, int sum, string vid);//конструктор инициализации
 Book ();//конструктор по умолчанию
 ~Book ();//деструктор
 void output();
 string getName(){return name;}
 string getData(){return name;}
 };
 
 //реализация
 Book:: Book(string name, string avtor, int data, int price)
 )
 {
 this->name=name;
 this->avtor=avtor;
 this->data=data;
 this->price=price;
 }
 
 Book:: Book ()
 {
 name=” ”;
 avtor=” ”
 data=0;
 price=0;
 
 }
 
 Book::~ Book()
 {
 cout<<"Обьект удален"<<endl;
 }
 
 void Book::output()
 {
 cout<<name<<endl;
 cout<<avtor<<endl;
 cout<<data<<endl;
 cout<<price<<endl;
 }
 
 class Books
 {
 public:
 Book *mas[100];
 int count;
 Books()
 {
 count = 0; 
 }
 void addNewBook(string name, string avtor, int data, int price);
 void outputAll();
 void searchForName();
 void searchForData();
 
 
 
 };
 
 //реализация
 void Books::addNewBook(int schet, string name, string schetf, int sum, string vid)
 {
 mas[count] = new Book(name, avtor, data, price);
 count++;
 }
 
 
 
 void Books::outputAll()
 {
 
 for (int i=0;i<count;i++)
 {
 mas[count]->output();
 }
 }
 
 void Books::searchForName()
 {
 cout<<"Введите имя"<<endl;
 string name;
 cin>>name;
 for (int i=0;i<count;i++)
 {
 if(mas[i]->getName() == name) mas[i]->output();
 }
 }
 
 void Books::searchForData()
 {
 cout<<"Введите год выпуска книги"<<endl;
 int data;
 cin>>name;
 for (int i=0;i<count;i++)
 {
 if(mas[i]->getData()==data) mas[i]->output();
 }
 }
 
 
 int main()
 {
 
 return 0;
 }
Добавлено через 5 минут
Ошибки:
C++
1
string getData(){return name;}
надо возвращать data
C++
1
Book(int schet, string name, string schetf, int sum, string vid);//конструктор инициализации
непонятные парметры
C++
1
 void Books::addNewBook(int schet, string name, string schetf, int sum, string vid)
непонятные параметры
C++
1
mas[count] = new Book(name, avtor, data, price);
где проверка, что мы вылезли за границу массива?
C++
1
mas[count]->output();
надо использовать i
1
15.11.2012, 18:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2012, 18:23
Привет! Вот еще темы с ответами:

Создать базовый класс "Массив" и класс-наследник "Матрица" - C++
Добрый день! такой вопрос, как задать двумерный массив и заполнить его рандомными числами. и как его реализовать используя абстрактные...

Абстрактный базовый класс "звонок" с виртуальной функцией "стоимость" - C++
Помогите пожалуйста очень надо (классы это не мое) полиморфизм Поступающие звонки оператор классифицирует (т.е. в какой город, регион, ...

Реализовать связь классов "телефонная книга" и родительский класс "телефонный номер" - C++
Суть проблемы:есть дочерний класс &quot;телефонная книга&quot; и родительский класс &quot;телефонный номер&quot;. В классе &quot;телефонная книга&quot; к заданной...

Реализовать базовый класс "Футбольная команда" и класс-наследник с методами консольного ввода/вывода - C++
Составить программу на языке С++, в которой описывается класс (с добавлением наследуемого подкласса) с методами ввода с клавиатуры и вывода...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.