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

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

Войти
Регистрация
Восстановить пароль
 
felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
#1

Запишите описание класса с именем TOVAR - C++

08.01.2013, 13:46. Просмотров 597. Ответов 9
Метки нет (Все метки)

Задание 1: Описание класса.
Запишите описание класса с именем TOVAR, содержащего следующие поля:
• наименование товара;
• количество единиц товара;
• дата поступления товара (массив из трех чисел).
Скройте элементы-данные от пользователя, предоставив интерфейс доступа к полям посредством открытых методов (предусмотрите объявление двух методов, один из которых присваивает значения полям класса, а другой – выводит значения этих свойств на экран).
Объявите массив объектов созданного класса.

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
#include "TOVAR.h"
#include <iostream>
 
 
TOVAR::TOVAR(void)
{
}
 
TOVAR::~TOVAR(void)
{
}
 
void TOVAR::putdata () {
    cout << "\n Наименование товара : " << naim << "\n Количество единиц товара: " << 
        kolic << "\n Дата поступления товара: " << data << endl;
}
 
void TOVAR::getdata(){
cout << "\n Наименование товара: "; 
cin >> naim;
cout << " Количество единиц товара: ";
cin >> kolic;
cout << " Дата поступления товара: ";  
cin >> date; 
}

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

Описание класса с именем TRAIN - C++
Задание 1: Описание класса. Запишите описание класса с именем TRAIN, содержащего следующие поля: 1)название пункта назначения; ...

Описание класса с именем PERSON - C++
Описание класса. Запишите описание класса с именем PERSON, содержащего следующие поля: фамилия и инициалы; дата рождения...

Описать структуру с именем TOVAR - C++
Помогите пожалуста!! 1 . Описать структуру с именем TOVAR , которая содержит следующие поля: - Name - название товара ; - Cost_Z -...

Как вынести описание методов вложенного класса за пределы класса? - C++
Подскажите, пожалуйста, как мне вынести описание методов вложенного класса за пределы класса?

Как описывать функции, заданные в шаблоне класса, тип возвращаемого значения которых совпадает с именем класса - C++
Здравствуйте. А как описывать функции, заданные в шаблоне класса, тип возвращаемого значения которых совпадает с именем класса? Более...

Составить описание класса "3D вектор". Объявить объекты класса и продемонстрировать работу методов - C++
Возникли сложности при решении задачи. Буду признателен тем, кто поможет. Задание: Составить описание класса. Объявить объекты класса...

9
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 13:54 #2
Файл TOVAR.h с описанием класса есть, надеюсь?

Конкретно здесь есть ошибка с разными именами: data и date
0
felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
08.01.2013, 13:58  [ТС] #3
Schizorb, надо создать TOVAR.h?
0
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 14:03 #4
felicita_091, ну раз он подключается
C++
1
#include "TOVAR.h"
Значит нужно, чтобы он был)
0
felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
08.01.2013, 14:08  [ТС] #5
Посмотрите пожалуйста..Правильно ли я это делала?
0
Вложения
Тип файла: rar lr_12.rar (1.05 Мб, 9 просмотров)
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 14:17 #6
В названиях переменных важен регистр, поэтому: naim и Naim разные имена, отсюда ошибка.

Массив int data[3] не получится ввести с помощью cin >> data.
Либо поэлементно вводите, либо другое представление для даты придумайте.

Ну и эту функцию не забудьте определить:
C++
1
void searchdata(char led[]);
1
felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
08.01.2013, 14:22  [ТС] #7
Schizorb,
C++
1
void searchdata(char led[]);
куда вставить??

Добавлено через 1 минуту
Schizorb, Помоги, я просто запуталась, программа не работает... Сделайте программу плиззззз
0
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 14:27 #8
felicita_091, ну у вас в классе есть описание этого метода, также как и putdata() и getdata(). Но два последних реализованы в файле TOVAR.cpp, а searchdata - нет. Судя по названию функции и возвращаемому типу void смею предположить, что она должна просто напечатать информацию о товаре, если его название совпало с введенной строкой.

Его нужно тоже реализовать:
C++
1
2
3
4
5
void TOVAR::searchdata(char led[]) 
{
    if(strcmp(naim, led) == 0)
        this -> putdata();
}
Прикрепил файлы с минимальными исправлениями... проверьте
1
Вложения
Тип файла: rar Study.rar (938 байт, 11 просмотров)
felicita_091
8 / 8 / 1
Регистрация: 24.10.2012
Сообщений: 428
08.01.2013, 14:54  [ТС] #9
Schizorb, почему так получилось?? оно не должно повторять
0
Миниатюры
Запишите описание класса с именем TOVAR  
Schizorb
509 / 461 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 14:59 #10
Я же вам в лс об этом написал... Если нужно хранить дату как массив трех чисел, то
Кликните здесь для просмотра всего текста
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
#include "TOVAR.h"
#include <iostream>
 
 
TOVAR::TOVAR(void)
{
}
 
TOVAR::~TOVAR(void)
{
}
 
void TOVAR::putdata () {
    cout << "\n Наименование товара : " << naim << "\n Количество единиц товара: " << 
        kolic << "\n Дата поступления товара: " 
            << data[0] << "." << data[1] << "." << data[2] << endl;
}
 
void TOVAR::searchdata(char led[]) 
{
    if(strcmp(naim, led) == 0)
        this -> putdata();
}
 
void TOVAR::getdata()
{
    char c;
    cout << "\n Наименование товара: "; 
    cin >> naim;
    cout << " Количество единиц товара: ";
    cin >> kolic;
    cout << " Дата поступления товара: ";  
       // чтение разделителей в переменную c, можно также cin.ignore() для пропуска символа
    cin >> data[0] >> c >> data[1] >> c >> data[2]; 
}


И в классе верните int data[3] вместо int data.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2013, 14:59
Привет! Вот еще темы с ответами:

Описание класса матрицы - C++
Доброго времени суток. Пожалуйста помогите с программой, писал долго и кое как вот написал:) Программа на курсовой проект, препод не...

Дополнить описание класса - C++
#include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;algorithm&gt; using namespace std; class CFigure { protected: struct Properties { ...

Задать описание класса - C++
Задать описание класса, содержащего поля int x, y; double a,b,c и позволяет выполнять следующие методы:Выполнять инициализацию всех полей...

Построить описание класса - C++
Здравствуйте! Нужна очень ваша помощь!) Может кому-нибудь не сложно написать программу.. Просто такая ситуация, семестр заканчивается, а...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
08.01.2013, 14:59
Ответ Создать тему
Опции темы

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