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

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

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

Реализовать класс ListPerson для работы с картотекой персоналий - C++

17.03.2013, 22:06. Просмотров 848. Ответов 4
Метки нет (Все метки)

Карточка персоны содержит фамилию и дату рождения. Реализовать класс ListPerson для работы с картотекой персоналий. Класс должен содержать массив карточек персон. Реализовать методы добавления и удаления карточек персон, а также метод доступа к карточке по фамилии. Фамилии в массиве должны быть уникальны. Реализовать операции объединения двух картотек, операцию пересечения и вычисления разности. Реализовать метод, выдающий по фамилии знак зодиака. Для этого в классе должен быть объявлен массив структур Zodiac с полями: название знака зодиака, дата начала и дата окончания периода. Индексом в массиве должен быть перечислимый тип zodiac. Реализовать два варианта класса: с обычным массивом и статическим массивом Zodiас.

Не прошу написать программу, просто объясните, пожалуйста.

Реализовать два варианта класса: с обычным массивом и статическим массивом Zodiас.
Что значит со статическим массивом? Как он отличается от обычного?

Индексом в массиве должен быть перечислимый тип zodiac.
Что значит перечисляемый тип?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2013, 22:06     Реализовать класс ListPerson для работы с картотекой персоналий
Посмотрите здесь:

Реализовать класс ListPerson для работы с картотекой персоналий - C++
Карточка персоны содержит фамилию и дату рождения. Реализовать класс ListPerson для работы с картотекой персоналий. Класс должен содержать...

Класс для работы с КАРТОТЕКОЙ КНИГ - C++
Доброго времени суток! Имеется задача: создать класс для работы с КАРТОТЕКОЙ КНИГ. Класс хранит информацию: название, имя автора, издание и...

Программа для работы с картотекой абонентов. - C++
Попытался написать программу на С++, но никак не получается Задание: На междугородной телефонной станции картотека абонентов,...

Реализовать класс для работы с товарами - C++

Реализовать класс для работы со строками - C++
Пожалуйста помогите с заданием Необходимо реализовать класс TString. В процессе выполнения задания нельзя пользоваться классом...

Реализовать класс для работы с системой мер - C++
Помогите пожалуйста реализовать класс для работы с американской системой массы

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Why so seriouS
44 / 44 / 1
Регистрация: 12.03.2013
Сообщений: 167
17.03.2013, 22:10     Реализовать класс ListPerson для работы с картотекой персоналий #2
Цитата Сообщение от Sunkar Посмотреть сообщение
Что значит со статическим массивом? Как он отличается от обычного?
Значит этот массив существует даже когда нет ни одного объекта. И этот массив существует на уровне класса а не на уровне объекта.
m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,256
Завершенные тесты: 2
17.03.2013, 22:14     Реализовать класс ListPerson для работы с картотекой персоналий #3
C++
1
enum zodiak{oven = 0, telec, blizneci, rak, lev, deva, vesi, skorpion, strelec, kozerog, vodoley, riba};
Sunkar
1 / 1 / 0
Регистрация: 03.04.2012
Сообщений: 33
20.03.2013, 14:32  [ТС]     Реализовать класс ListPerson для работы с картотекой персоналий #4
Мне придется создать массив строк. Как из создавать и обрабатывать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.03.2013, 11:15     Реализовать класс ListPerson для работы с картотекой персоналий
Еще ссылки по теме:

Реализовать класс для работы с квадратной целочисленной матрицей - C++
1) Составить описание класса для работы с квадратной целочисленной матрицей. Обязательные функции-члены класса для ввода/вывода ...

Реализовать класс Complex для работы с комплексными числами - C++
Комплексное число представляются парой действительных чисел (a, b), где a — действительная часть, b — мнимая часть. Реализовать класс...

Реализовать класс Complex для работы с комплексными числами. - C++
Реализовать класс Complex для работы с комплексными числами. Класс должен обеспечивать инкапсуляцию информации о действи-тельной и мнимой...

Реализовать класс для работы с одномерными массивами указателей строк - C++
всем привет. помогите пожалуйста не могу написать прогу по заданию. реализовать класс для работы с одномерными массивами указателей...

Создать класс, в котором реализовать функции для работы с одномерными массивами - C++
Ребят помогите с задачкой Создать класс, в котором реализовать функции для работы с одномерными массивами: а) получить...

Ввести класс для работы с прямоугольной матрицей, реализовать операции сложения и умножения матриц - C++
Кто-нибудь подскажите, пожалуйста написать программу в С++. Ввести класс для работы с прямоугольной матрицей. Реализовать операции: ...


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

Или воспользуйтесь поиском по форуму:
Sunkar
1 / 1 / 0
Регистрация: 03.04.2012
Сообщений: 33
26.03.2013, 11:15  [ТС]     Реализовать класс ListPerson для работы с картотекой персоналий #5
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
#include <iostream>
#include <math.h>
#include <Windows.h>
 
using namespace std;
static char* y;
 
class Array
{
protected:
 
char** mas;
char** mas1;
int size;
static int max_size;
public:
 
Array(int s=0){size=s; mas=new char* [size]; mas1=new char* [size];}
 
 
char* operator[](int i)
{
if (i<size)
{return mas[i];
}
else
cout<<'\n'<<"ÍåêîððåêòГ*ûé ГЁГ*äåêñ";
return 0;
} ;
 
void display()
{
for(int i=0;i<size;i++)
{cout<<i<<". ";
cout<<" "<<mas[i]<<" "<<mas1[i]<<endl;
}
};
 
 
};
 
class listperson :public Array
{
public:
listperson(int s=0){size=s;mas=new char* [size]; mas1=new char* [size];}
 
void setcard()
{
 
for(int i=0;i<size;i++)
{cout<<i<<". ";
mas[i] = new char[255];
mas1[i] = new char[255];
cout<<"Ââåäèòå ГґГ*ìèëèþ? ";
cin.getline(mas[i], 255);
cout<<"Ââåäèòå Г¤Г*ГІГі ðîæäåГ*ГЁГї. ÔîðìГ*ГІ DD-MM-YYYY ";
cin.getline(mas1[i], 255);
cout<<endl; };
}
 
void delcard()
{ int i;
cout<<"Ââåäèòå Г*îìåð äëÿ ГіГ¤Г*ëåГ*ГЁГї Г¤Г*Г*Г*ûõ ";
cin>>i;
mas1[i]=mas[i]="<ГЇГіГ±ГІГ®>";
};
 
 
struct Zodiac
{
char* zod;
double inc;
double end;
};
 
enum zodiac{vodoley=0, ryba, oven, telec, blizneci, rak, leo, deva, vesi, scorpion, strelec, kozerog, nul };
 
void z(char* e)
{
Zodiac Z[nul];
 
Z[vodoley].zod="Âîäîëåé";
Z[vodoley].inc=21.01;
Z[vodoley].end=18.02;
 
Z[ryba].zod="Ðûáû";
Z[ryba].inc=19.02;
Z[ryba].end=20.03;
 
 
Z[oven].zod="ГЋГўГҐГ*";
Z[oven].inc=21.03;
Z[oven].end=20.04;
 
 
Z[telec].zod="Òåëåö";
Z[telec].inc=21.04;
Z[telec].end=20.05;
 
Z[blizneci].zod="ÁëèçГ*åöû";
Z[blizneci].inc=21.05;
Z[blizneci].end=21.06;
 
Z[rak].zod="ГђГ*ГЄ";
Z[rak].inc=22.06;
Z[rak].end=22.07;
 
Z[leo].zod="Ëåâ";
Z[leo].inc=23.07;
Z[leo].end=23.08;
 
Z[deva].zod="ÄåâГ*";
Z[deva].inc=24.08;
Z[deva].end=23.09;
 
Z[vesi].zod="Âåñû";
Z[vesi].inc=24.09;
Z[vesi].end=23.10;
 
Z[scorpion].zod="ÑêîðïèîГ*";
Z[scorpion].inc=24.10;
Z[scorpion].end=22.11;
 
Z[strelec].zod="Ñòðåëåö";
Z[strelec].inc=23.11;
Z[strelec].end=21.12;
 
Z[kozerog].zod="Êîçåðîã";
Z[kozerog].inc=22.12;
Z[kozerog].end=20.01;
 
 
char k[2];
char t[2];
char l[5];
double p;
 
 
strcpy(l,e);
t[0]=l[0];
t[1]=l[1];
k[0]=l[3];
k[1]=l[4];
const int a=atoi(e);          12-03-1993
const int b=atoi(k);
 
 
if (b==floor(modf(Z[vodoley].inc,&p)*100))
if (a<floor(Z[vodoley].inc)) cout<<Z[kozerog].zod; else cout<<Z[vodoley].zod ;
 
if (b==ceil(modf(Z[ryba].inc,&p)*100))
if (a>floor(Z[vodoley].end)) cout<<Z[ryba].zod; else cout<<Z[vodoley].zod ;
 
if (b==floor(modf(Z[oven].inc,&p)*100))
if (a>floor(Z[ryba].end)) cout<<Z[oven].zod; else cout<<Z[ryba].zod ;
 
if (b==ceil(modf(Z[telec].inc,&p)*100))
if (a>ceil(Z[oven].end)) cout<<Z[telec].zod; else cout<<Z[oven].zod ;
 
if (b==floor(modf(Z[blizneci].inc,&p)*100))
if (a>floor(Z[telec].end)) cout<<Z[blizneci].zod; else cout<<Z[telec].zod ;
 
if (b==ceil(modf(Z[rak].inc,&p)*100))
if (a>ceil(Z[blizneci].end)) cout<<Z[rak].zod; else cout<<Z[blizneci].zod ;
 
if (b==floor(modf(Z[leo].inc,&p)*100))
if (a>floor(Z[rak].end)) cout<<Z[leo].zod; else cout<<Z[rak].zod ;
 
if (b==ceil(modf(Z[deva].inc,&p)*100))
if (a>ceil(Z[leo].end)) cout<<Z[deva].zod; else cout<<Z[leo].zod ;
 
if (b==ceil(modf(Z[vesi].inc,&p)*100))
if (a>ceil(Z[deva].end)) cout<<Z[vesi].zod; else cout<<Z[deva].zod ;
 
if (b==floor(modf(Z[scorpion].inc,&p)*100))
if (a>floor(Z[vesi].end)) cout<<Z[scorpion].zod; else cout<<Z[vesi].zod ;
 
if (b==(ceil(modf(Z[strelec].inc,&p)*100)))
if (a>ceil(Z[scorpion].end)) cout<<Z[strelec].zod; else cout<<Z[scorpion].zod ;
if (b==floor(modf(Z[kozerog].inc,&p)*100))
if (a>floor(Z[strelec].end)) cout<<Z[kozerog].zod; else cout<<Z[strelec].zod ;
 
 
}
 
void access()
{
 
char* j;
int k;
j = new char[255];
r:cout<<"Ââåäèòå ГґГ*ìèëèþ ";
cin.getline(j, 255);
for(int i=0;i<size;i++)
{
if (strcmp(j, mas[i])==0)
{cout<<"ГЌГ*éäåГ*:"<<endl;
cout<<mas[i]<<endl;
cout<<mas1[i]<<endl;
y=mas1[i];
k=1;
break;
}
}
if (k!=1) {cout<<"Г’Г*êîãî Г*ГҐ Г±ГіГ№ГҐГ±ГІГўГіГҐГІ."; goto r;};
}
 
} ;
 
main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int pr;
char* dr;
 
listperson b(4);
 
 
b.setcard();
cout<<"Ââåäèòå Г*îìåð ГЄГ*ðòîòåêè äëÿ âûâîäГ* ";
cin>>pr;
dr=b.operator[](pr);
cout<<pr<<"-ýëåìåГ*ГІ - "<<dr<<endl;
b.delcard();
b.display();
getchar();
b.access();
cout<<"Г‡Г*Г*ГЄ çîäèГ*ГЄГ*: ";
b.z(y);
 
getchar();
getchar();
 
}
Yandex
Объявления
26.03.2013, 11:15     Реализовать класс ListPerson для работы с картотекой персоналий
Ответ Создать тему
Опции темы

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