Abgabe_neu
Neubauer_1_Klassen.cpp@1:0415fa5d95e4, 2020-04-28 (annotated)
- Committer:
- gigo2191
- Date:
- Tue Apr 28 19:35:11 2020 +0000
- Revision:
- 1:0415fa5d95e4
- Parent:
- 0:5cabd77ebde3
neu
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
gigo2191 | 0:5cabd77ebde3 | 1 | /****************************************************************************** |
gigo2191 | 0:5cabd77ebde3 | 2 | |
gigo2191 | 0:5cabd77ebde3 | 3 | C++ Kurs BULME 19/20 SM |
gigo2191 | 0:5cabd77ebde3 | 4 | Aufgane 02 |
gigo2191 | 0:5cabd77ebde3 | 5 | Vererbung |
gigo2191 | 0:5cabd77ebde3 | 6 | Mario Neubauer |
gigo2191 | 0:5cabd77ebde3 | 7 | |
gigo2191 | 0:5cabd77ebde3 | 8 | *******************************************************************************/ |
gigo2191 | 0:5cabd77ebde3 | 9 | |
gigo2191 | 0:5cabd77ebde3 | 10 | #include <stdio.h> |
gigo2191 | 0:5cabd77ebde3 | 11 | #include <iostream> |
gigo2191 | 0:5cabd77ebde3 | 12 | using namespace std; |
gigo2191 | 0:5cabd77ebde3 | 13 | |
gigo2191 | 0:5cabd77ebde3 | 14 | namespace Neubauer{ //Namensraum wird erstellt |
gigo2191 | 0:5cabd77ebde3 | 15 | enum eckig { ja = 1, nein = 2}; |
gigo2191 | 0:5cabd77ebde3 | 16 | |
gigo2191 | 0:5cabd77ebde3 | 17 | class Kreis{ //Klasse Kreis wird erstellt |
gigo2191 | 0:5cabd77ebde3 | 18 | private: //Nicht öffentlich verwendbar |
gigo2191 | 0:5cabd77ebde3 | 19 | float m_radius; //Wert des Radius |
gigo2191 | 0:5cabd77ebde3 | 20 | eckig m_hat_ecken; |
gigo2191 | 0:5cabd77ebde3 | 21 | |
gigo2191 | 0:5cabd77ebde3 | 22 | public: //Öffentlich verwendbar |
gigo2191 | 0:5cabd77ebde3 | 23 | float berechneUmfang(); //Zum berechnen des Umfangs |
gigo2191 | 0:5cabd77ebde3 | 24 | float berechneFlaeche(); //Zum berechnen der Fläche |
gigo2191 | 0:5cabd77ebde3 | 25 | string AusgabeEcken(); //Für die Ausgabe, ob Ecken vorhanden sind oder nicht |
gigo2191 | 0:5cabd77ebde3 | 26 | |
gigo2191 | 0:5cabd77ebde3 | 27 | Kreis(float radius); //Für die Ermittlung des Radiuses |
gigo2191 | 0:5cabd77ebde3 | 28 | Kreis(bool eckig); //Für die Ermittlung, ob ecken vorhanden sind |
gigo2191 | 0:5cabd77ebde3 | 29 | }; |
gigo2191 | 0:5cabd77ebde3 | 30 | |
gigo2191 | 0:5cabd77ebde3 | 31 | Kreis::Kreis(float radius) { //Für die Ermittlung des Radiuses |
gigo2191 | 0:5cabd77ebde3 | 32 | m_radius = radius; |
gigo2191 | 0:5cabd77ebde3 | 33 | } |
gigo2191 | 0:5cabd77ebde3 | 34 | |
gigo2191 | 0:5cabd77ebde3 | 35 | //Für die Ermittlung, ob Ecken vorhanden sind |
gigo2191 | 0:5cabd77ebde3 | 36 | Kreis::Kreis(bool eckig) { |
gigo2191 | 0:5cabd77ebde3 | 37 | m_hat_ecken = (eckig == false) ? nein:ja; |
gigo2191 | 0:5cabd77ebde3 | 38 | } |
gigo2191 | 0:5cabd77ebde3 | 39 | |
gigo2191 | 0:5cabd77ebde3 | 40 | //Umfang wird berechnet |
gigo2191 | 0:5cabd77ebde3 | 41 | float Kreis::berechneUmfang() { return (2*m_radius * 3.1415);} |
gigo2191 | 0:5cabd77ebde3 | 42 | |
gigo2191 | 0:5cabd77ebde3 | 43 | //Fläche wird berechnet |
gigo2191 | 0:5cabd77ebde3 | 44 | float Kreis::berechneFlaeche() {return(m_radius*m_radius*3.1415);} |
gigo2191 | 0:5cabd77ebde3 | 45 | |
gigo2191 | 0:5cabd77ebde3 | 46 | //Ausgabe, ob Ecken vorhanden sind |
gigo2191 | 0:5cabd77ebde3 | 47 | string Kreis::AusgabeEcken() { |
gigo2191 | 0:5cabd77ebde3 | 48 | string ausgabe; |
gigo2191 | 0:5cabd77ebde3 | 49 | ausgabe = (m_hat_ecken == nein) ? "nein":"ja"; |
gigo2191 | 0:5cabd77ebde3 | 50 | return ausgabe; |
gigo2191 | 0:5cabd77ebde3 | 51 | } |
gigo2191 | 0:5cabd77ebde3 | 52 | } |
gigo2191 | 0:5cabd77ebde3 | 53 | |
gigo2191 | 0:5cabd77ebde3 | 54 | //---------------------------------------------------------------------- |
gigo2191 | 0:5cabd77ebde3 | 55 | //Hauptprogramm |
gigo2191 | 0:5cabd77ebde3 | 56 | |
gigo2191 | 0:5cabd77ebde3 | 57 | int main() |
gigo2191 | 0:5cabd77ebde3 | 58 | { |
gigo2191 | 0:5cabd77ebde3 | 59 | Neubauer::Kreis meinKreis(4.0f); //Klasse wird initialisiert, Werte werden übergeben |
gigo2191 | 0:5cabd77ebde3 | 60 | Neubauer::Kreis Ecken(false); |
gigo2191 | 0:5cabd77ebde3 | 61 | |
gigo2191 | 0:5cabd77ebde3 | 62 | //Variablen |
gigo2191 | 0:5cabd77ebde3 | 63 | string ecke = Ecken.AusgabeEcken(); //Wenn Ecken vorhanden sind wird ja übergeben, ansonsten nein |
gigo2191 | 0:5cabd77ebde3 | 64 | |
gigo2191 | 0:5cabd77ebde3 | 65 | //Ausgaben |
gigo2191 | 0:5cabd77ebde3 | 66 | printf("Der Umfang beträgt: %f\n", meinKreis.berechneUmfang()); //Ausgabe des Umfangs |
gigo2191 | 0:5cabd77ebde3 | 67 | printf("Die Fläche beträgt: %f\n", meinKreis.berechneFlaeche()); //Ausgabe der Fläche |
gigo2191 | 0:5cabd77ebde3 | 68 | cout << "Ecken: " << ecke << endl; //Ausgabe, ob Ecken vorhanden sind |
gigo2191 | 0:5cabd77ebde3 | 69 | |
gigo2191 | 0:5cabd77ebde3 | 70 | return 0; |
gigo2191 | 0:5cabd77ebde3 | 71 | } |