Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Fintt
10 / 10 / 0
Регистрация: 13.02.2012
Сообщений: 94
#1

Класс Book - C++

08.09.2013, 18:14. Просмотров 505. Ответов 1
Метки нет (Все метки)

Подскажите, как добавить в список книг ещё одну книгу? Я думаю функцию больше не надо писать, можно в case засунуть. Я немного запутался.
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
class Book
     {
      char Avtor [20];
      char Nazvanie [20];
      char Izd [20];
      int god;
      int kol_str;
      public:
         Book();
         char *getavtor();
         char *getizd();
         int getgod();
         void show();
     };
 
Book::Book()
        {
         cout<<"Avtor: "; cin>>Avtor;
         cout<<"Nazvanie: "; cin>>Nazvanie;
         cout<<"Izdat: "; cin>>Izd;
         cout<<"God: "; cin>>god;
         cout<<"Kol str: "; cin>>kol_str; cout<<endl;
        }
 
void Book::show()
    {
     cout<<"Avtor: "<<Avtor<<"\t||\t"<<"Nazvanie: "<<Nazvanie<<endl;
     cout<<"Izdat: "<<Izd<<"\t||\t"<<"God: "<<god<<"\t||\t"<<"Kol str: "<<kol_str<<endl; cout<<endl;
    }
 
char *Book::getavtor() { return Avtor; }
char *Book::getizd() { return Izd; }
int Book::getgod() { return god; }
 
void spis_book_avtora(Book spis[],int n);
void spis_book_izd(Book spis[],int n);
void spis_book_po_godu(Book spis[],int n);
void ves_spisok(Book spis[], int n);
 
void menu()
    {
char chr=' ';
     cout<<"                MENU"<<endl;
     cout<<"            1-Sformirovatb spisok"<<chr<<endl;
     cout<<"            2-Spis knig po avtoru"<<chr<<endl;
     cout<<"            3-Spis knig po izdatelbstvy"<<chr<<endl;
     cout<<"            4-Spis knig posle goda"<<chr<<endl;
     cout<<"            5-Dobavitb knigu"<<chr<<endl;
     cout<<"            6-Izmenitb nazvanie"<<chr<<endl;
     cout<<"            7-Udalitb knigu"<<chr<<endl;
     cout<<"            8-Wes spisok knig"<<chr<<endl;
     cout<<"                Esc->EXIT"<<chr<<endl;
    }
 
void main()
    {
     clrscr();
     Book *spis;
     int n,i;
     char ch;
     menu();
     while (ch!=27){
     ch=getch();
     switch (ch)
       {
        case '1': cout<<"Vvedite kol-vo: "; cin>>n;
              spis=new Book[n];
             for (i=0;i<n;i++)
                {
                 cout<<"============================================================="<<endl;
                 spis[i].show();
                 cout<<"============================================================="<<endl;
                 } break;
        case '2': cout<<"Spisok knig po avtoru"<<endl;
              spis_book_avtora(spis,n); break;
        case '3': cout<<"Spisok knig po izdatelbstvu"<<endl;
              spis_book_izd(spis,n); break;
        case '4': cout<<"Spisok knig posle zadannogo goda"<<endl;
              spis_book_po_godu(spis,n);  break;
        case '5': cout<<"Dobavitb v spisok"<<endl;
 
        //  case '7':  break;
        case '8': ves_spisok(spis,n); break;
        case 27: ch=27; break;
        default: clrscr(); menu();
       }}
     getch();
     delete[] spis;
    }
 
void ves_spisok(Book spis[], int n)
    {
      for (int i=0; i<n; i++)
      spis[i].show();
    }
 
void spis_book_avtora(Book spis[],int n)
    {
     char Avtor[20];
     cout<<"Avtor: ";
     cin>>Avtor; cout<<endl;
     for (int i=0; i<n; i++)
    if (strcmp(spis[i].getavtor(),Avtor)==0) spis[i].show();
      else cout<<"Het takogo avtora";
    }
 
void spis_book_izd(Book spis[],int n)
    {
     char Izd[20];
     cout<<"Izdat: ";
     cin>>Izd; cout<<endl;
     for (int i=0; i<n; i++)
    if (strcmp(spis[i].getizd(),Izd)==0) spis[i].show();
       else cout<<"Het takogo izdatelstva";
    }
 
void spis_book_po_godu(Book spis[],int n)
    {
     int g;
     cout<<"God: ";
     cin>>g; cout<<endl;
     for (int i=0; i<n; i++)
    if (spis[i].getgod()>=g) spis[i].show();
    }
Добавлено через 4 часа 15 минут
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.09.2013, 18:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Класс Book (C++):

Создать класс Book. Переменная типа Book должна содержать следующие поля: - C++
Помогите решить=(. Создать класс Book. Переменная типа Book должна содержать следующие поля: название, количество авторов; авторы; год...

Класс Book - C++
напсиал программу с классами #include &lt;iostream&gt; #include &lt;string.h&gt; using namespace std; #define N 3 class book { private:...

Класс Book - C++ - C++
Помогите решить: Класс Book - C++ Данные: название, автор, код ISBN, издательство. Методы: 1. Получения значения полей...

Разработать класс Book - C++
почему мне выдает ошибку??? Нужно разработать класс Book. определить конструктор и деструктор. реализовать объявленные методы доступными...

Есть класс A и класс B, класс B вложен в класс A и вложен в него, как классу B получить доступ к переменным класса A просто по имени? - C++
На самом деле ничё фантастического я не прошу, ведь: template &lt;class T&gt; class matrix { friend class diagonal; ...

Динамические структуры Book - C++
Подскажите пожалуйста, как запихнуть в элемент (BOOK** k) структуры (KART) адрес созданной одиночной динамической переменной структуры...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Hugra
47 / 47 / 1
Регистрация: 18.07.2013
Сообщений: 138
Записей в блоге: 1
08.09.2013, 18:28 #2
Цитата Сообщение от Fintt Посмотреть сообщение
Подскажите, как добавить в список книг ещё одну книгу?
Выдели место под новый массив, с размером больше предыдущего на один. Скопируй в него старый массив книг и добавь новую книгу. Или используй Vector
p.s. Я считаю, что не стоит создавать такой конструктор =\
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.09.2013, 18:28
Привет! Вот еще темы с ответами:

Class book continue - C++
Задание: Создать заголовочный файл bookshop.h и описать в нём класс bookshop со следующими полями (закрытыми) и функциями-членами...

Class Book ошибочка - C++
Задания: Создать пустой проект и добавить в него файл main.cpp с функцией main. Создать заголовочный файл book.h (не забывая о стражах...

Класс таблиц баз данных и класс записей в таблице(реляционная таблица). Предусмотреть класс связей между таблицами - C++
Здравствуйте! Никак не могу продумать структуру этой программы. Проходим наследование, но я все равно не знаю, как его здесь применить. Как...

Написать структуру Book и функции сортировки массива таких структур - C++
Ребят помогайте , нужно лабу сдать , выручите . Описать структуру . Заполнить данными массив из 5 элементов . В полученной базе данных...


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

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

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