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:
6:
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:
|
.cpp
#include
#include
#include
#include „car.h“
#include „customer.h“
#include „res.h“
using namespace-Geschlechtskrankheit;
time_t convTime (int-Tag, int-Monat, int-Jahr)
{
time_t rawtime;
struct TM * timeinfo;
Zeit (&rawtime);
timeinfo = localtime (&rawtime);
timeinfo->tm_year = Jahr - 1900;
timeinfo->tm_mon = Monat - 1;
timeinfo->tm_mday = Tag;
Rückholmktime (timeinfo);
}
time_t askForTime ()
{
int-Tag, Monat, Jahr;
cout << „geben bitte alle Felder als Zahlen.“ ein << endl;
cout << „Tag: “;
cin >> Tag;
cout << „Monat: “;
cin >> Monat;
cout << „Jahr: “;
cin >> Jahr;
RückholconvTime (Tag, Monat, Jahr);
}
Kunde createCust ()
{
Schnur cName, cAddress, cccNumber, cccType, cEmail;
cout<< " tragen bitte Ihren Namen ein und betätigen dann sich hereinkommen. „<> cName;
cout<< " tragen bitte Ihre Adresse ein und betätigen dann sich hereinkommen. „<> cAddress;
cout<< " geben bitte Ihre Kreditkartennummer ein und betätigen dann sich hereinkommen. „<> cccNumber;
cout<< " tragen bitte Ihre Kreditkarteart ein und betätigen dann sich hereinkommen. „<> cccType;
cout<< " tragen bitte Ihr email address ein und betätigen dann sich hereinkommen. „<> cEmail;
Rückholkunde (cName, cAddress, cccNumber, cccType, cEmail);
}
int-Hauptleitung (Lücke)
{
vector Kunden;
Auto carArray [10] = {
Auto (1, „mittelgrosses“, 50.00, falsches),
Auto (2, „mittelgroß“, 55.00, richten) aus,
Auto (3, „Vertrag“, 40.00, falsches),
Auto (4, „Vertrag“, 45.00, richten) aus,
Auto (5, „Größengleich“, 55.00, falsches),
Auto (6, „Größengleich“, 60.00, richten) aus,
Auto (7, „Mehrzweckfahrzeug“, 55.00, falsches),
Auto (8, „Mehrzweckfahrzeug“, 60.00, richten) aus,
Auto (9, „SUV“, 60.00, falsches),
Auto (10, „SUV“, 65.00, richten) aus,
};
int-Vorwähler;
Kunde * currentCust;
bool notDone = richten aus;
cout << „bilden bitte eine Vorwähler: “ << endl;
cout << „1. Ich bin ein neuer Kunde. “ << endl;
cout << „2. Ich bin ein vorhandener Kunde. “ << endl;
cout << „1 oder 2: “;
cin >> Vorwähler;
wenn (Vorwähler == 1)
{
customers.push_back (createCust ());
currentCust = &customers [customers.size () - 1];
}
sonst wenn (Vorwähler == 2)
{
cout << „, das Kunde sind Sie?“ << endl;
für (int I = 0; I < customers.size (); i++)
cout << (i+1) << „. “ << Kunden [i] .getName () << endl;
cout << „? “;
cin >> Vorwähler;
currentCust = &customers [Vorwähler];
}
während (notDone) {
cout << endl << endl;
cout << „bilden bitte eine Vorwähler: “ << endl;
cout << „1. Eine Reservierung anbringen“ << endl;
cout << „2. sehen Reservierungs-Zeitplan“ << endl an;
cout << „Ausgang 3.“ << endl;
cout << „? “;
cin >> Vorwähler;
wenn (Vorwähler == 1)
{
cout << „tragen bitte Auswahl-Update.“ ein << endl;
time_t outD = askForTime ();
cout << „erreichen bitte Rückholdatum.“ << endl;
time_t inD = askForTime ();
cout << „bitte eingegebene Auto Identifikation Nr. (1-10): “;
int idNum;
cin >> idNum;
Reservierung r = Reservierung (outD, inD, idNum, currentCust);
cout << „Ihre Reservierung ist bestätigt worden. “;
}
sonst wenn (Vorwähler == 3)
notDone = falsch;
}
Rückkehr 0;
}
// customer.h
#ifndef H_CUSTOMER
#define H_CUSTOMER
#include
using namespace-Geschlechtskrankheit;
Kategorie Kunde
{
Öffentlichkeit:
leeres Druck () const;
Schnur getName ();
Schnur getAddress ();
Schnur getccNumber ();
Schnur getccType ();
Schnur getEmail ();
Kunde (Schnur _name, Schnur _address, Schnur _ccNumber, Schnur _ccType, Schnur _email);
privat:
Schnurname;
Schnuradresse;
Schnur ccNumber;
Schnur ccType;
Schnur-eMail;
};
leerer Kunde:: Druck () const
{
cout<< Namens<
#include
#include
#include „res.h“
using namespace-Geschlechtskrankheit;
Kategorie Auto
{
privat:
int idNumber;
Schnur cSize;
doppeltes pricePerDay;
bool Rauchen;
vector Reservierungen;
Öffentlichkeit:
Auto (int idN, Schnur s, doppeltes p, bool Inspektion);
bool makeReservation (Reservierung *res);
leeres cancelReservation (Reservierung *res);
};
Auto:: Auto (int idN, Schnur s, doppeltes p, bool Inspektion)
{
idNumber = idN;
cSize = s;
pricePerDay = p;
Rauchen = Inspektion;
}
/*
Während:
vector Auto:: Reservierungen;
bool Reservierung:: Konflikt ();
*
bool Auto:: makeReservation (Reservierung *res)
{
für (int i=0; I < reservations.size (); i++)
{
wenn (Reservierungen [i] .conflict (Res)) //-Konflikt bringt zutreffendes zurück, wenn die Daten widersprechen. NICHT SCHON GESCHRIEBEN
//-Wurf („der Vormerkdatumkonflikt mit einem anderen reservation.");
//-Fang (Putzfraumitteilung [])
{
cout << „die Vormerkdaten widersprechen mit einer anderen Reservierung.“ << endl;
Rückholfalsches;
}
}
//now, das wir kennen, dass das Datum nicht widerspricht. gerade Notwendigkeit, sie zu addieren
reservations.push_back (*res);
/*
//now-Update die Reservierungsakte
cout << „versuchend sich zu öffnen“ << DATEINAME << endl;
ifstream inp (DATEINAME, ifstream:: in);
wenn (! inp.good ())
Wurf („es gab ein Problem, welches die Reservierung file.") öffnet;
Fang (Putzfraumitteilung [])
{
cout << Mitteilung << endl;
Rückholfalsches;
}
während (inp.good ())
{
//read die Reservierungen
}
*
Rückhol ausrichten;
}
Auto aufheben:: cancelReservation (Reservierung * Res)
{
für (int i=0; I < reservations.size (); i++)
wenn (res->getidNumber () == idNumber)
reservations.erase (reservations.begin () + i);
}
#endif
// res.h
#ifndef H_RESERVATION
#define H_RESERVATION
#include
#include „car.h“
#include „customer.h“
using namespace-Geschlechtskrankheit;
Kategorie Reservierung
{
privat:
time_t dateOut;
time_t dateIn;
int carID;
Kunde * custInfo;
int reservationNumber;
Öffentlichkeit:
Reservierung (time_t dOut, time_t Lärm, int _carID, Kunde * custI);
bool Konflikt (Reservierung *r);
int getidNumber ();
time_t getDateOut ();
time_t getDateIn ();
int getCarReserved ();
Customer* getCustInfo ();
};
int-Reservierung:: getidNumber ()
{
RückholreservationNumber;
}
time_t Reservierung:: getDateOut ()
{
RückholdateOut;
}
time_t Reservierung:: getDateIn ()
{
RückholdateIn;
}
int-Reservierung:: getCarReserved ()
{
RückholcarID;
}
Customer* Reservierung:: getCustInfo ()
{
RückholcustInfo;
}
bool Reservierung:: Konflikt (Reservierung *r)
{
wenn ((r->getDateIn () < dateOut) || (r->getDateOut () > dateIn))
Rückholfalsches;
Rückhol ausrichten;
}
Reservierung:: Reservierung (time_t dOut, time_t Lärm, int _carID, Kunde * custI)
{
dateOut = dOut;
dateIn = Lärm;
carID = _carID;
custInfo = custI;
}
#endif
|