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

Описать сведения о книге - C++

Войти
Регистрация
Восстановить пароль
 
nedoprogrammist
0 / 0 / 0
Регистрация: 07.06.2010
Сообщений: 11
16.01.2012, 16:04     Описать сведения о книге #1
Написал программу, иллюстрирующую работу класса. Программа должна запоминать заглавие книги(строковой тип), имя автора(строковой тип) и число таких книг (целый тип). Затем все эти данные она должна вывести на экран. Надо написать под ДОС. Писал на С++ Билдер 6.
Загвоздка в том, что не пойму в чём ошибка? Уважаемые программисты, проверьте, пожалуйста, мою работу и укажите мне на ошибки, заранее благодарю.
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
#include <iostream>
#include <string>
using namespace std;
 
class card {
string zagl[80];
string avt[80];
int kolvo[80];
public:
int store();
void show(int i);
};
 
int card::store(){
int i=0;
char k;
do {cout<<"Vvedite nazvanie: ";
cin>>zagl[i];
cout<<"Vvedite avtora: ";
cin>>avt[i];
cout<<"Skolko otdano: ";
cin>>kolvo[i];
cout<<"Echo? (y/n)";
cin<<k;
if (k=='y') i++;
}
while (k!='n');
return i;
}
 
void card::show(int i){
int c;
for (c=0;c!=i;c++){
cout<<zagl[c]<<" "<<avt[c]<<" "<<kolvo[c];
};
};
 
int main(){
card book;
book.store();
book.show(i);
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1285 / 1219 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
16.01.2012, 16:06     Описать сведения о книге #2
Строка 23. Закрой кавычку.
Лжец
 Аватар для Лжец
31 / 31 / 3
Регистрация: 13.12.2011
Сообщений: 106
16.01.2012, 16:07     Описать сведения о книге #3
Цитата Сообщение от nedoprogrammist Посмотреть сообщение
Загвоздка в том, что не пойму в чём ошибка?
Пардон, не заметил метода.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1285 / 1219 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
16.01.2012, 16:08     Описать сведения о книге #4
35,36 - удали ;

Добавлено через 48 секунд
Цитата Сообщение от Лжец Посмотреть сообщение
либо пиши к ним методы
store и show и есть те самые методы...
co6ak
Кошковед
 Аватар для co6ak
406 / 499 / 29
Регистрация: 12.04.2010
Сообщений: 1,392
16.01.2012, 16:09     Описать сведения о книге #5
строка 24. стрелки в другую сторону
строка 41 - число, а не неопределенная переменная

без палева
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1285 / 1219 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
16.01.2012, 16:11     Описать сведения о книге #6
Цитата Сообщение от co6ak Посмотреть сообщение
строка 23. стрелки в другую сторону
Прикалываешься?

Добавлено через 22 секунды
А в 24 не прикалываешься.)))
Лжец
 Аватар для Лжец
31 / 31 / 3
Регистрация: 13.12.2011
Сообщений: 106
16.01.2012, 16:12     Описать сведения о книге #7
Цитата Сообщение от Deviaphan Посмотреть сообщение
store и show и есть те самые методы...
Да, да, я не заметил сразу. Извиняюсь.
nedoprogrammist
0 / 0 / 0
Регистрация: 07.06.2010
Сообщений: 11
16.01.2012, 16:24  [ТС]     Описать сведения о книге #8
строка 24. стрелки в другую сторону
Исправил, спасибо.

Добавлено через 9 минут
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
#include <iostream>
#include <string>
using namespace std;
 
class card {
string zagl[80];
string avt[80];
int kolvo[80];
public:
int store();
void show(int i);
};
 
int card::store(){
int i=0;
char k;
do {cout<<"Vvedite nazvanie: ";
cin>>zagl[i];
cout<<"Vvedite avtora: ";
cin>>avt[i];
cout<<"Skolko otdano: ";
cin>>kolvo[i];
cout<<"Echo? (y/n)";
cin>>k;
if (k=='y') i++;
}
while (k!='n');
return i;
}
 
void card::show(int ii){
int c;
for (c=0;c!=ii;c++){
cout<<zagl[c]<<" "<<avt[c]<<" "<<kolvo[c];
};
};
 
int main(){
card book;
int ii;
book.store()==ii;
book.show(ii);
}
Всё заработало!!! Спасибо Вам!!!
HungryInsect
2 / 2 / 1
Регистрация: 16.01.2012
Сообщений: 6
16.01.2012, 22:50     Описать сведения о книге #9
Цитата Сообщение от nedoprogrammist Посмотреть сообщение
...
...
C++
1
2
3
4
5
6
7
8
...
...
int main(){
card book;
int ii;
book.store()==ii;
book.show(ii);
}
Как это может работать? переменная i не инициализирована
Объявляете переменную ii целого типа.
Потом сравниваете возвращаемое значение с 1988992564
А после 1988992564 передаете book.show(1988992564) -> БРЕД!
retmas
Жарю без масла
831 / 713 / 156
Регистрация: 13.01.2012
Сообщений: 1,638
16.01.2012, 23:20     Описать сведения о книге #10
i не инициализирована и означает, что она содержит бред (например, 1988992564)
и этим бредом дальше пользуешься
HungryInsect
2 / 2 / 1
Регистрация: 16.01.2012
Сообщений: 6
17.01.2012, 00:14     Описать сведения о книге #11
Цитата Сообщение от retmas Посмотреть сообщение
i не инициализирована и означает, что она содержит бред (например, 1988992564)
и этим бредом дальше пользуешься
Это явно не то, что автор хотел сделать ))
retmas
Жарю без масла
831 / 713 / 156
Регистрация: 13.01.2012
Сообщений: 1,638
17.01.2012, 00:25     Описать сведения о книге #12
Цитата Сообщение от HungryInsect Посмотреть сообщение
Это явно не то, что автор хотел сделать ))
конечно, я просто отвечал на вопрос
Цитата Сообщение от HungryInsect Посмотреть сообщение
C++
1
2
3
int ii;
book.store()==ii;
book.show(ii);
Как это может работать?
nedoprogrammist
0 / 0 / 0
Регистрация: 07.06.2010
Сообщений: 11
17.01.2012, 12:54  [ТС]     Описать сведения о книге #13
Но ведь инициализация i происходит в самой функции!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int card::store(){
int i=0;
char k;
do {cout<<"Vvedite nazvanie: ";
cin>>zagl[i];
cout<<"Vvedite avtora: ";
cin>>avt[i];
cout<<"Skolko otdano: ";
cin>>kolvo[i];
cout<<"Echo? (y/n)";
cin<<k;
if (k=='y') i++;
}
while (k!='n');
return i;
А потом возвращаемое значение i мы присваиваем переменной ii
C++
1
2
int ii;
book.store()==ii;
Как надо правильно сделать?
retmas
Жарю без масла
831 / 713 / 156
Регистрация: 13.01.2012
Сообщений: 1,638
17.01.2012, 12:56     Описать сведения о книге #14
C++
1
ii = book.store();
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2012, 13:16     Описать сведения о книге
Еще ссылки по теме:

C++ Описать сведения о книгах
C++ Поиск в книге
Ошибка в книге? C++
Сведения о книгах в библиотеке, получить информацию о книге с заданным шифром C++
Калькулятор в книге Страуструпа C++

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

Или воспользуйтесь поиском по форуму:
nedoprogrammist
0 / 0 / 0
Регистрация: 07.06.2010
Сообщений: 11
17.01.2012, 13:16  [ТС]     Описать сведения о книге #15
Во я дурак!)))) Спасибо!
Yandex
Объявления
17.01.2012, 13:16     Описать сведения о книге
Ответ Создать тему
Опции темы

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