Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 11.09.2013
Сообщений: 7
1

Создать два класса: Date (дата в формате ДД.ММ.ГГ) и Performer

12.03.2014, 20:43. Показов 1161. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно создать два класса. Первый Date (дата в формате ДД.ММ.ГГ), второй Performer. Объекты второго класса имеют поля 1)имя (char) 2)фамилия (char) 3)дата(Date).
Вопрос: Это можно реализовать не используя наследование? Если да, то как?
Код, который у меня написан, прилагается.

C++ (Qt)
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
130
131
132
133
134
135
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <string>
using namespace std;
//Оголошення та опис класу Дата
class Date
{
    int Day, Month, Year;
    public:
    Date();
    Date (int x, int y, int z);
    Date(const Date & src);
    ~Date();
    int GetDay() {return Day;};
    int GetMonth() {return Month;};
    int GetYear() {return Year;};
    void Show();
    void SetDay(int a) {Day=a;};
    void SetMonth(int b) {Month=b;};
    void SetYear(int c) {Year=c;};
};
Date::Date()
{
    cout<<"Constr. without options working\n";
    Day=12;
    Month=05;
    Year=2014;
};
Date::Date(int x, int y, int z)
{
    cout<<"Constr. with options working\n";
    cin>>x>>y>>z;
    Day=x;
    Month=y;
    Year=z;
};
Date::Date(const Date & src)
{
    Day=src.Day;
    Month=src.Month;
    Year=src.Year;
    cout<<"Copywriter working\n";
};
Date::~Date()
{
    cout<<"Destr. working\n";
};
void Date::Show()
{
    cout<<Day<<"."<<Month<<"."<<Year<<".\n";
};
 
/*int main()
{
    int x, y, z;
    Date obj1 (x, y, z);
    Date obj2;
    Date obj3(obj1);
    obj1. Show();
    obj2. Show();
    obj3.Show();
    _getch();
    return 0;
}*/
 
//Оголошення та опис класу Послуга
enum Service 
{ 
    Clean,CleanWindows,Childrengarden,Repairs,Mixed
};
 
//Оголошення та опис класу Виконавець
class Performer
{
private:
    char Name[20], Surname[20];
    Date Birthday;
public:
    Performer ();                       //конструктор без параметрів
    Performer (char a[20],char b[20],Date obj);//конструктор з параметрами
    Performer (const Performer & T);    //конструктор копіювання
    void Show1();
    ~Performer();                       //деструктор
};
Performer::Performer()
{
    cout<<"Constr. without options working(1)\n";
    const char a1[5]="Ivan", b1[7]="Ivanov";
    strcpy_s (Name,5,a1);
    strcpy_s (Surname,7,b1);
    Date Birthday (int x, int y, int z);
};
Performer::Performer(char a[20],char b[20],Date obj)
{
    cout<<"Constr. with options working(1)\n";
    fgets(a,20,stream);
    fgets(b,20,stream);
    strcpy_s(Name,strlen(a),a);
    strcpy_s(Surname,strlen(b),b);
    Date::Date (const Date & Birthday);
};
/*Performer::Performer(const Performer & src1)
{
    Name=src1.Name;
    Surname=src1.Surname;
    Birthday=src1.Birthday;
    cout<<"Copywriter working(1)\n";
};*/
Performer::~Performer()
{
    cout<<"Destr. working(1)\n";
};
void Performer::Show1()
{
    cout<<Name<<" "<<Surname<<"\n";
    Birthday.Show();
};
 
int main1()
{
    char a2[20], b2[20];
    int x, y, z;
    Date obj1 (x, y, z);
    Date obj2;
    Date obj3(obj1);
    Performer Second();
    Performer First (a2[20], b2[20],obj1);
    Performer Third (First);
    First. Show1();
    Second. Show1();
    Third.Show1();
    _getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.03.2014, 20:43
Ответы с готовыми решениями:

Создать класс Date – дата, содержащая поля: день, месяц, год.
Создать класс Date – дата, содержащая поля: день, месяц, год. Определить операторы &quot;+&quot; и &quot;-&quot;, как...

Создать класс Date, который может выводить даты в формате DD YYYY и MM/DD/YY
помогите создать класс Date, который может выводить даты в формате DD YYYY и MM/DD/YY. Создайте...

Создать класс Date для работы с датами в формате «год.месяц.день»
Создать класс Date для работы с датами в формате «год.месяц.день». Дата представляется структурой с...

Создать класс Date для работы с датами в формате «год.месяц.день»
Создать класс Date для работы с датами в формате «год.месяц.день». Дата представляется структурой с...

5
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
12.03.2014, 21:06 2
Уже и реализовано без наследования. В чем проблемы?
1
1 / 1 / 0
Регистрация: 11.09.2013
Сообщений: 7
12.03.2014, 22:14  [ТС] 3
Проблема в этом:
1>------ Build started: Project: lab1, Configuration: Debug Win32 ------
1>Compiling...
1>main_file.cpp
1>.\main_file.cpp(92) : warning C4930: 'Date Birthday(int,int,int)': prototyped function not called (was a variable definition intended?)
1>.\main_file.cpp(97) : error C2065: 'stream' : undeclared identifier
1>.\main_file.cpp(101) : error C2143: syntax error : missing ')' before 'const'
1>.\main_file.cpp(101) : error C2059: syntax error : ')'
1>.\main_file.cpp(128) : error C2664: 'Performer::Performer(char [],char [],Date)' : cannot convert parameter 1 from 'char' to 'char []'
1> Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
1>.\main_file.cpp(131) : error C2228: left of '.Show1' must have class/struct/union
1>Build log was saved at "file://d:\Дария\Учебное\Программирование и информатика\9 семестр (магистр)\lab1\lab1\lab1\Debug\BuildLog.htm"
1>lab1 - 5 error(s), 1 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
12.03.2014, 23:24 4
Цитата Сообщение от Dariya2304 Посмотреть сообщение
error C2228: left of '.Show1' must have class/struct/union
Уберите скобки в 127 строке.
Хотя этого будет маловато. Ошибок-то ещё тьма. Почему выделили только эту?
1
1 / 1 / 0
Регистрация: 11.09.2013
Сообщений: 7
12.03.2014, 23:56  [ТС] 5
Со всеми остальными ошибками уже справилась. Спасибо за 127 строку. Помогли! Скомпилировала, но теперь выполняется только int main, а int main1 -- нет. Что делать?

C++ (Qt)
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
130
131
132
133
134
135
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <string>
using namespace std;
//Оголошення та опис класу Дата
class Date
{
    public:
    int Day, Month, Year;
    Date();
    Date (int x, int y, int z);
    Date(const Date & src);
    ~Date();
    int GetDay() {return Day;};
    int GetMonth() {return Month;};
    int GetYear() {return Year;};
    void Show();
    void SetDay(int a) {Day=a;};
    void SetMonth(int b) {Month=b;};
    void SetYear(int c) {Year=c;};
};
Date::Date()
{
    cout<<"Constr. without options working\n";
    Day=12;
    Month=05;
    Year=2014;
};
Date::Date(int x, int y, int z)
{
    cout<<"Constr. with options working\n";
    cin>>x>>y>>z;
    Day=x;
    Month=y;
    Year=z;
};
Date::Date(const Date & src)
{
    Day=src.Day;
    Month=src.Month;
    Year=src.Year;
    cout<<"Copywriter working\n";
};
Date::~Date()
{
    cout<<"Destr. working\n";
};
void Date::Show()
{
    cout<<Day<<"."<<Month<<"."<<Year<<".\n";
};
 
int main()
{
    int x, y, z;
    Date obj1 (x, y, z);
    Date obj2;
    Date obj3(obj1);
    obj1. Show();
    obj2. Show();
    obj3.Show();
    _getch();
    return 0;
}
 
//Оголошення та опис класу Послуга
enum Service 
{ 
    Clean,CleanWindows,Childrengarden,Repairs,Mixed
};
 
//Оголошення та опис класу Виконавець
class Performer
{
private:
    char Name[20], Surname[20];
    Date Birthday;
public:
    Performer ();                       //конструктор без параметрів
    Performer (char a[20],char b[20],Date obj);//конструктор з параметрами
    Performer (const Performer & T);    //конструктор копіювання
    void Show1();
    ~Performer();                       //деструктор
};
Performer::Performer()
{
    cout<<"Constr. without options working(1)\n";
    const char a1[5]="Ivan", b1[7]="Ivanov";
    strcpy_s (Name,5,a1);
    strcpy_s (Surname,7,b1);
    Date::Date ();
};
Performer::Performer(char a[20],char b[20],Date obj)
{
    cout<<"Constr. with options working(1)\n";
    gets_s(a,20);
    gets_s(b,20);
    strcpy_s(Name,strlen(a),a);
    strcpy_s(Surname,strlen(b),b);
    Date::Date ();
};
/*Performer::Performer(const Performer & src1)
{
    Name=src1.Name;
    Surname=src1.Surname;
    Birthday=src1.Birthday;
    cout<<"Copywriter working(1)\n";
};*/
Performer::~Performer()
{
    cout<<"Destr. working(1)\n";
};
void Performer::Show1()
{
    cout<<Name<<" "<<Surname<<"\n";
    Birthday.Show();
};
 
int main1()
{
    char a2[20], b2[20];
    int x, y, z;
    Date obj1 (x, y, z);
    Date obj2;
    Date obj3(obj1);
    Performer First (a2, b2,obj1);
    Performer Second;
    //Performer Third (First);
    First. Show1();
    Second. Show1();
    //Third.Show1();
    _getch();
    return 0;
}
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
13.03.2014, 04:53 6
Цитата Сообщение от Dariya2304 Посмотреть сообщение
но теперь выполняется только int main, а int main1 -- нет.
А почему она должна выполняться, если ее никто не вызвает?
1
13.03.2014, 04:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.03.2014, 04:53
Помогаю со студенческими работами здесь

"Создать класс Date для работы с датами в формате «год.месяц.день»
В чем ошибки? #include &lt;iostream&gt; using namespace std; class Date { public: int...

Создать класс Date для работы с датами в формате "год. месяц. день"
Всем доброго времени суток. Задали задачу на С++, но не могу её осилить. Может быть у кого-нибудь...

Как создать скриншот с названием в формате Дата-время
Привет всем! Перейду сразу к делу. Мне нужно что бы создавался скриншот с названием Пример...

Создать класс Date для работы с датами в формате "год.месяц.день"
надо написать класс 1 контрольная 8 задание. только срочно в понедельник уже сдать надо. заранее...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru