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:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
361:
362:
363:
364:
365:
|
" codeBody "
" notpretty " //.cpp
#include
#include
#include
#include „car.h“
#include „customer.h“
#include „res.h“
het gebruiken van namespace norm;
time_t convTime (int.dag, int.maand, int.jaar)
{
time_t rawtime;
struct tm * timeinfo;
tijd (&rawtime);
timeinfo = localtime (&rawtime);
timeinfo->tm_year = jaar - 1900;
timeinfo->tm_mon = maand - 1;
timeinfo->tm_mday = dag;
terugkeer mktime (timeinfo);
}
time_t askForTime ()
{
int. dag, maand, jaar;
cout gelieve te gaan << „alle gebieden als aantallen in.“ << endl;
cout „Dag <<: “;
cin dag >>;
cout „Maand <<: “;
cin maand >>;
cout „Jaar <<: “;
cin jaar >>;
terugkeer convTime (dag, maand, jaar);
}
Klant createCust ()
{
koord cName, cAddress, cccNumber, cccType, cEmail;
cout<< " te gaan gelieve uw naam in en te druk dan binnengaan. „<> cName;
cout<< " te gaan gelieve uw adres in en te druk dan binnengaan. „<> cAddress;
cout<< " te gaan gelieve uw creditcardaantal in en te druk dan binnengaan. „<> cccNumber;
cout<< " te gaan gelieve uw creditcardtype in en te druk dan binnengaan. „<> cccType;
cout<< " te gaan gelieve uw e-mailadres in en te druk dan binnengaan. „<> cEmail;
terugkeer Klant (cName, cAddress, cccNumber, cccType, cEmail);
}
(nietige) int.leiding
{
vector klanten;
carArray auto [10] = {
Auto (1, „Medio Grootte“, valse 50.00,),
Auto (2, „Medio Grootte“, ware 55.00,),
Auto (3, „Compact“, valse 40.00,),
Auto (4, „Compact“, ware 45.00,),
Auto (5, „Hoogtepunt - grootte“, valse 55.00,),
Auto (6, „Hoogtepunt - grootte“, ware 60.00,),
Auto (7, „Minivan“, 55.00, vals),
Auto (8, „Minivan“, 60.00, waar),
Auto (9, „SUV“, 60.00, vals),
Auto (10, „SUV“, 65.00, waar),
};
int. selectie;
Klant * currentCust;
bool notDone = waar;
cout gelieve te maken << „een Selectie: “ << endl;
cout << „1. Ik ben een nieuwe klant. “ << endl;
cout << „2. Ik ben een bestaande klant. “ << endl;
cout << „1 of 2: “;
cin selectie >>;
als (selectie == 1)
{
customers.push_back (createCust ());
currentCust = &customers [customers.size () - 1];
}
als anders (selectie == 2)
{
cout << „die de klant u?“ is << endl;
voor (int. i = 0; i < customers.size (); i++)
cout << (i+1) << „. “ klanten << [I] .getName () << endl;
cout << „? “;
cin selectie >>;
currentCust = &customers [selectie];
}
terwijl (notDone) {
cout << endl << endl;
cout gelieve te maken << „een Selectie: “ << endl;
cout << „1. Maak een Reserve“ << endl;
cout << „2. Het Programma“ << van de Reserve van de mening endl;
cout << „3. Uitgang“ << endl;
cout << „? “;
cin selectie >>;
als (selectie == 1)
{
cout gelieve te gaan << „de Update van de Oogst in.“ << endl;
time_t outD = askForTime ();
cout gelieve te gaan << „de Datum van de Terugkeer in.“ << endl;
time_t Ind. = askForTime ();
cout gelieve te voeren << „het Aantal van identiteitskaart van de Auto (in 1-10): “;
int. idNum;
cin idNum >>;
Reserve r = Reserve (outD, Ind., idNum, currentCust);
cout << „Uw reserve is bevestigd. “;
}
als anders (selectie == 3)
notDone = vals;
}
terugkeer 0;
}
// customer.h
#ifndef H_CUSTOMER
#define H_CUSTOMER
#include
het gebruiken van namespace norm;
klassen Klant
{
publiek:
nietige druk () const;
koord getName ();
koord getAddress ();
koord getccNumber ();
koord getccType ();
koord getEmail ();
Klant (koord _name, koord _address, koord _ccNumber, koord _ccType, koord _email);
privé:
koord naam;
koord adres;
koord ccNumber;
koord ccType;
koord e-mail;
};
nietige Klant:: druk () const
{
cout<< naam <
#include
#include
#include „res.h“
het gebruiken van namespace norm;
klassen Auto
{
privé:
int. idNumber;
het koord cSize;
dubbele pricePerDay;
bool het roken;
vector reserves;
publiek:
Auto (int. idN, koord s, dubbel p, bool sm);
bool makeReservation (Reserve *res);
nietige cancelReservation (Reserve *res);
};
Auto:: Auto (int. idN, koord s, dubbel p, bool sm)
{
idNumber = idN;
cSize = s;
pricePerDay = p;
het roken = sm;
}
/*
In afwachting van:
vector auto:: reserves;
bool reserve:: conflict ();
*/
bool Auto:: makeReservation (Reserve *res)
{
voor (int. i=0; i < reservations.size (); i++)
{
als (reserves [I] .conflict (onderzoek)) // het conflict keert waar terug als de data strijdig zijn. NOG NIET GESCHREVEN
// werpt (de „Reservedata zijn met een andere reserve strijdig. “);
// vangst (klusjesbericht [])
{
cout << het „Conflict van reservedata met een andere reserve.“ << endl;
valse terugkeer;
}
}
//now dat wij de datum niet strijdig is hebben geweten. behoefte enkel om het toe te voegen
reservations.push_back (*res);
/*
//now update het reservedossier
cout << die „“ << FILENAME << proberen te openen endl;
ifstream inp (FILENAME, ifstream:: in);
als (! inp.good ())
werp („Er was een probleem die het reservedossier openen. “);
vangst (klusjesbericht [])
{
cout <<- bericht << endl;
valse terugkeer;
}
terwijl (inp.good ())
{
//read de reserves
}
*/
ware terugkeer;
}
nietige Auto:: cancelReservation (Reserve * onderzoek)
{
voor (int. i=0; i < reservations.size (); i++)
als (res->getidNumber () == idNumber)
reservations.erase (reservations.begin () + I);
}
#endif
// res.h
#ifndef H_RESERVATION
#define H_RESERVATION
#include
#include „car.h“
#include „customer.h“
het gebruiken van namespace norm;
klassen Reserve
{
privé:
time_t dateOut;
time_t dateIn;
int. carID;
custInfo van de klant *;
int. reservationNumber;
publiek:
Reserve (time_t dOut, time_t DIN, int. _carID, Klant * custI);
bool conflict (Reserve *r);
int. getidNumber ();
time_t getDateOut ();
time_t getDateIn ();
int. getCarReserved ();
getCustInfo van Customer* ();
};
int. Reserve:: getidNumber ()
{
terugkeer reservationNumber;
}
time_t Reserve:: getDateOut ()
{
terugkeer dateOut;
}
time_t Reserve:: getDateIn ()
{
terugkeer dateIn;
}
int. Reserve:: getCarReserved ()
{
terugkeer carID;
}
De Reserve van Customer*:: getCustInfo ()
{
terugkeer custInfo;
}
bool Reserve:: conflict (Reserve *r)
{
als ((r->getDateIn () < dateOut) || (r->getDateOut () > dateIn))
valse terugkeer;
ware terugkeer;
}
Reserve:: Reserve (time_t dOut, time_t DIN, int. _carID, Klant * custI)
{
dateOut = dOut;
dateIn = DIN;
carID = _carID;
custInfo = custI;
}
#endif
|