Abgabe_neu

Committer:
gigo2191
Date:
Tue Apr 28 19:33:52 2020 +0000
Revision:
0:5cabd77ebde3
Abgabe

Who changed what in which revision?

UserRevisionLine numberNew 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 }