TINF_Abgaben

Harg_1_Klassen_Namespace.cpp

Committer:
haunsi
Date:
2020-04-29
Revision:
0:bedc26f35995

File content as of revision 0:bedc26f35995:

#include <stdio.h>
#include <iostream>
 
enum eckig {ja,nein};

namespace Harg  //gibt den namespace an unter dem gearbeitet wird
{
    class Kreis         
    {
        //Zugriff nur über Member-Funktionen
        private:          
        float m_radius;
        eckig hat_ecken; //für die Übergabe, ob rund oder eckig
        
        public:          
        float berechneUmfang();
        float berechneFlaeche();
        char rundodereckig(); 
 
        Kreis(float radius, eckig ecken);
};
 
    Kreis::Kreis(float radius, eckig ecken) 
    {
        m_radius = radius;
        hat_ecken = ecken;
    }    
 
    float Kreis::berechneUmfang() 
    {
        return (m_radius * m_radius * 3.1415);
    }
 
    char Kreis::rundodereckig() //Funktionsdefinition, ob Ecken oder nicht
    {
        if (hat_ecken == 1)
        {
            printf("Der Kreis hat keine Ecken.\n");
            return hat_ecken;
        }
        else 
        {
            printf("Der Kreis hat Ecken.\n");
            return hat_ecken;
        }
    }
}
 
int main ()
{
  using namespace Harg;
  Kreis meinKreis(4.0, ja); //Erstellung des Objekts "meinKreis"
  
  float umfang = meinKreis.berechneUmfang();
  char corny = meinKreis.rundodereckig(); 
  
  printf ("Der Umfang beträgt: %f m. %d", umfang, corny); //Ausgabe des Umfangs und des Bool-Werts
 
  return 0;
}