TINF_Abgaben
Harg_1_Klassen_Namespace.cpp@0:bedc26f35995, 2020-04-29 (annotated)
- Committer:
- haunsi
- Date:
- Wed Apr 29 11:18:41 2020 +0000
- Revision:
- 0:bedc26f35995
Namespace_Vererbung_final
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
haunsi | 0:bedc26f35995 | 1 | #include <stdio.h> |
haunsi | 0:bedc26f35995 | 2 | #include <iostream> |
haunsi | 0:bedc26f35995 | 3 | |
haunsi | 0:bedc26f35995 | 4 | enum eckig {ja,nein}; |
haunsi | 0:bedc26f35995 | 5 | |
haunsi | 0:bedc26f35995 | 6 | namespace Harg //gibt den namespace an unter dem gearbeitet wird |
haunsi | 0:bedc26f35995 | 7 | { |
haunsi | 0:bedc26f35995 | 8 | class Kreis |
haunsi | 0:bedc26f35995 | 9 | { |
haunsi | 0:bedc26f35995 | 10 | //Zugriff nur über Member-Funktionen |
haunsi | 0:bedc26f35995 | 11 | private: |
haunsi | 0:bedc26f35995 | 12 | float m_radius; |
haunsi | 0:bedc26f35995 | 13 | eckig hat_ecken; //für die Übergabe, ob rund oder eckig |
haunsi | 0:bedc26f35995 | 14 | |
haunsi | 0:bedc26f35995 | 15 | public: |
haunsi | 0:bedc26f35995 | 16 | float berechneUmfang(); |
haunsi | 0:bedc26f35995 | 17 | float berechneFlaeche(); |
haunsi | 0:bedc26f35995 | 18 | char rundodereckig(); |
haunsi | 0:bedc26f35995 | 19 | |
haunsi | 0:bedc26f35995 | 20 | Kreis(float radius, eckig ecken); |
haunsi | 0:bedc26f35995 | 21 | }; |
haunsi | 0:bedc26f35995 | 22 | |
haunsi | 0:bedc26f35995 | 23 | Kreis::Kreis(float radius, eckig ecken) |
haunsi | 0:bedc26f35995 | 24 | { |
haunsi | 0:bedc26f35995 | 25 | m_radius = radius; |
haunsi | 0:bedc26f35995 | 26 | hat_ecken = ecken; |
haunsi | 0:bedc26f35995 | 27 | } |
haunsi | 0:bedc26f35995 | 28 | |
haunsi | 0:bedc26f35995 | 29 | float Kreis::berechneUmfang() |
haunsi | 0:bedc26f35995 | 30 | { |
haunsi | 0:bedc26f35995 | 31 | return (m_radius * m_radius * 3.1415); |
haunsi | 0:bedc26f35995 | 32 | } |
haunsi | 0:bedc26f35995 | 33 | |
haunsi | 0:bedc26f35995 | 34 | char Kreis::rundodereckig() //Funktionsdefinition, ob Ecken oder nicht |
haunsi | 0:bedc26f35995 | 35 | { |
haunsi | 0:bedc26f35995 | 36 | if (hat_ecken == 1) |
haunsi | 0:bedc26f35995 | 37 | { |
haunsi | 0:bedc26f35995 | 38 | printf("Der Kreis hat keine Ecken.\n"); |
haunsi | 0:bedc26f35995 | 39 | return hat_ecken; |
haunsi | 0:bedc26f35995 | 40 | } |
haunsi | 0:bedc26f35995 | 41 | else |
haunsi | 0:bedc26f35995 | 42 | { |
haunsi | 0:bedc26f35995 | 43 | printf("Der Kreis hat Ecken.\n"); |
haunsi | 0:bedc26f35995 | 44 | return hat_ecken; |
haunsi | 0:bedc26f35995 | 45 | } |
haunsi | 0:bedc26f35995 | 46 | } |
haunsi | 0:bedc26f35995 | 47 | } |
haunsi | 0:bedc26f35995 | 48 | |
haunsi | 0:bedc26f35995 | 49 | int main () |
haunsi | 0:bedc26f35995 | 50 | { |
haunsi | 0:bedc26f35995 | 51 | using namespace Harg; |
haunsi | 0:bedc26f35995 | 52 | Kreis meinKreis(4.0, ja); //Erstellung des Objekts "meinKreis" |
haunsi | 0:bedc26f35995 | 53 | |
haunsi | 0:bedc26f35995 | 54 | float umfang = meinKreis.berechneUmfang(); |
haunsi | 0:bedc26f35995 | 55 | char corny = meinKreis.rundodereckig(); |
haunsi | 0:bedc26f35995 | 56 | |
haunsi | 0:bedc26f35995 | 57 | printf ("Der Umfang beträgt: %f m. %d", umfang, corny); //Ausgabe des Umfangs und des Bool-Werts |
haunsi | 0:bedc26f35995 | 58 | |
haunsi | 0:bedc26f35995 | 59 | return 0; |
haunsi | 0:bedc26f35995 | 60 | } |