Advertisement
Guest User

Untitled

a guest
Aug 19th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.53 KB | None | 0 0
  1. // C++ Trainer, 17.5.2011, all rights reserved
  2.  
  3. /*
  4. Leichtathletik
  5. Basisklasse: Startnummer, Vorname, Name, Herkunftsland
  6.  
  7.  
  8. 3 Sportdisziplinen
  9. sprung (weitsprung, hochsprung, dreisprung, ..?), wurf (hammerwerfen, speerweitwurf),
  10. lauf (z.B. 800m, 200m, 100m-Lauf, hürdenlauf, staffel, marathon)
  11. (mit halbfinale, finale...?)
  12. -> vererbung, 3 abgeleitete klassen
  13.  
  14. Hauptklasse LA:
  15. #vorname
  16. #name
  17. #startnummer
  18. #land
  19.  
  20. Klasse Sprung:
  21. #sprungdisziplin
  22. #wert[3]
  23.  
  24. Klasse Teilnehmer12:
  25. Methode:
  26.  
  27.  
  28. Unterklassen: Weitsprung, Dreisprung
  29. Weitsprung:
  30.  
  31.  
  32. Klasse Teilnehmer8:
  33. Unterklassen: Hochsprung, Stabhochsprung
  34.  
  35.  
  36. */
  37. #include <iostream>
  38. using namespace std;
  39.  
  40.  
  41. /* ################## KLASSEN ################## */
  42.  
  43. class LA
  44. {
  45. protected: string vorname;
  46. string name;
  47. unsigned short int startnummer;
  48. string land;
  49.  
  50.  
  51. public: void set_vorname();
  52. void set_name();
  53. void set_startnummer();
  54. void set_land();
  55.  
  56. string get_vorname();
  57. string get_name();
  58. unsigned short int get_startnummer();
  59. string get_land();
  60. LA();
  61. ~LA();
  62. };
  63.  
  64. class sprung : public LA
  65. {
  66. protected: string sprungdisziplin;
  67. double wert[3];
  68.  
  69. public: void set_sprungdisziplin();
  70. void set_wert();
  71.  
  72. string get_sprungdisziplin();
  73. double get_wert();
  74.  
  75. sprung();
  76. ~sprung();
  77. };
  78.  
  79. class teilnehmer12 : public sprung
  80. {
  81. protected: //datentyp name;
  82.  
  83. public:
  84.  
  85.  
  86. teilnehmer12();
  87. ~teilnehmer12();
  88. };
  89.  
  90. class teilnehmer8 : public sprung
  91. {
  92. protected:
  93.  
  94. public:
  95.  
  96. teilnehmer8();
  97. ~teilnehmer8();
  98. };
  99.  
  100. class weitsprung : public teilnehmer12
  101. {
  102. private: string bezeichnung;
  103.  
  104. weitsprung();
  105. ~weitsprung();
  106. };
  107.  
  108. class dreisprung : public teilnehmer12
  109. {
  110. private: string bezeichnung;
  111.  
  112. dreisprung();
  113. ~dreisprung();
  114. };
  115.  
  116. class hochsprung : public teilnehmer8
  117. {
  118. private: string bezeichnung;
  119.  
  120. hochsprung();
  121. ~hochsprung();
  122. };
  123.  
  124. class stabhochsprung : public teilnehmer8
  125. {
  126. private: string bezeichnung;
  127.  
  128. stabhochsprung();
  129. ~stabhochsprung();
  130. };
  131.  
  132. /* ################## METHODEN ################## */
  133.  
  134.  
  135. /* ### METHODEN LA ### */
  136. void LA::set_vorname()
  137. {
  138. cout<<" Bitte den Vornamen eingeben: ";
  139. cin>>vorname;
  140. }
  141.  
  142. void LA::set_name()
  143. {
  144. cout<<" Bitte den Namen eingeben: ";
  145. cin>>name;
  146. }
  147.  
  148. void LA::set_startnummer()
  149. {
  150. cout<<" Bitte die Startnummer eingeben: ";
  151. cin>>startnummer;
  152. }
  153.  
  154. void LA::set_land()
  155. {
  156. cout<<" Bitte das Land eingeben: ";
  157. cin>>land;
  158. }
  159.  
  160. string LA::get_vorname()
  161. {
  162. return vorname;
  163. }
  164.  
  165. string LA::get_name()
  166. {
  167. return name;
  168. }
  169.  
  170. unsigned short int LA::get_startnummer()
  171. {
  172. return startnummer;
  173. }
  174.  
  175. string LA::get_land()
  176. {
  177. return land;
  178. }
  179.  
  180.  
  181. LA::LA()
  182. {
  183. vorname= " ";
  184. name= " ";
  185. startnummer = 0;
  186. land=" ";
  187. }
  188.  
  189. LA::~LA()
  190. {
  191.  
  192.  
  193. }
  194. /* ### METHODEN sprung ### */
  195.  
  196. void sprung:: set_wert()
  197. {
  198. for( int i=0 ;i<3 ;i++ )
  199. {
  200. cin>>wert[i];
  201. }
  202. }
  203.  
  204. void sprung:: sortieren()
  205. {
  206.  
  207. }
  208. sprung:: sprung()
  209. {
  210. }
  211. sprung:: ~sprung()
  212. {
  213. }
  214.  
  215. /* ### METHODEN teilnehmer12 ### */
  216.  
  217. teilnehmer12::teilnehmer12()
  218. {
  219.  
  220. }
  221.  
  222. teilnehmer12::~teilnehmer12()
  223. {
  224.  
  225. }
  226.  
  227. /* ### METHODEN teilnehmer8 ### */
  228.  
  229. teilnehmer8::teilnehmer8()
  230. {
  231.  
  232. }
  233. teilnehmer8::~teilnehmer8()
  234. {
  235. }
  236.  
  237. /* ### METHODEN weitsprung ### */
  238.  
  239. weitsprung::weitsprung()
  240. {
  241. }
  242.  
  243. weitsprung::~weitsprung()
  244. {
  245. }
  246. /* ### METHODEN dreisprung ### */
  247.  
  248. dreisprung::dreisprung()
  249. {
  250. }
  251.  
  252. dreisprung::~dreisprung()
  253. {
  254. }
  255. /* ### METHODEN hochsprung ### */
  256.  
  257. hochsprung::hochsprung()
  258. {
  259. }
  260.  
  261. hochsprung::~hochsprung()
  262. {
  263. }
  264. /* ### METHODEN stabhochsprung ### */
  265.  
  266. stabhochsprung::stabhochsprung()
  267. {
  268. }
  269.  
  270. stabhochsprung::~stabhochsprung()
  271. {
  272. }
  273.  
  274. int main()
  275. {
  276.  
  277. char disziplin;
  278. int i=0;
  279.  
  280. cout<<"Für welche Disziplin möchten Sie Teilnehmer angeben?\n";
  281. cout<<"a) Weitsprung\n";
  282. cout<<"b) Dreisprung\n";
  283. cout<<"c) Hochsprung\n";
  284. cout<<"d) Stabhochsprung\n";
  285. cin>>disziplin;
  286.  
  287. cout<<"Wieviele Teilnehmer starten in dieser Disziplin?\n";
  288. cin>>teilnehmer_zahl;
  289.  
  290. switch (disziplin)
  291. {
  292. case 'a':
  293. case 'A':
  294. {
  295. weitsprung *teilnehmer_weitsprung[12]; //Deklaration Zeigerarray
  296. //beliebige Zahl zur Begrenzung... kann später noch geändert werden
  297. for(i=0;i<teilnehmer_zahl;i++)
  298. {
  299. teilnehmer_weitsprung[i]= new weitsprung; // Objekte der Klasse weitsprung dynamisch erzeugen
  300. // teilnehmer_weitsprung[i]->methode();
  301. // teilnehmer_weitsprung[i]->methode();
  302. }
  303. }
  304. break;
  305. case 'b':
  306. case 'B':
  307. {
  308. dreisprung *teilnehmer_dreisprung[12]; //Deklaration Zeigerarray
  309. //beliebige Zahl zur Begrenzung... kann später noch geändert werden
  310. for(i=0;i<teilnehmer_zahl;i++)
  311. {
  312. teilnehmer_dreisprung[i]= new dreisprung; // Objekte der Klasse weitsprung dynamisch erzeugen
  313. // teilnehmer_dreisprung[i]->methode();
  314. // teilnehmer_dreisprung[i]->methode();
  315.  
  316. }
  317. }
  318. break;
  319. case 'c':
  320. case 'C':
  321. {
  322. hochsprung *teilnehmer_hochsprung[8]; //Deklaration Zeigerarray
  323. //beliebige Zahl zur Begrenzung... kann später noch geändert werden
  324. for(i=0;i<teilnehmer_zahl;i++)
  325. {
  326. teilnehmer_hochsprung[i]= new hochsprung; // Objekte der Klasse weitsprung dynamisch erzeugen
  327. // teilnehmer_hochsprung[i]->methode();
  328. // teilnehmer_hochsprung[i]->methode();
  329.  
  330. }
  331. }
  332. break;
  333. case 'd':
  334. case 'D':
  335. {
  336. stabhochsprung *teilnehmer_stabhochsprung[8]; //Deklaration Zeigerarray
  337. //beliebige Zahl zur Begrenzung... kann später noch geändert werden
  338. for(i=0;i<teilnehmer_zahl;i++)
  339. {
  340. teilnehmer_stabhochsprung[i]= new stabhochsprung; // Objekte der Klasse weitsprung dynamisch erzeugen
  341. // teilnehmer_stabhochsprung[i]->methode();
  342. // teilnehmer_stabhochsprung[i]->methode();
  343.  
  344. }
  345. }
  346. break;
  347. default: ;
  348. }
  349.  
  350. getchar();
  351. return 0;
  352. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement