TINF_Aufgaben

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Harg_1_Klassen_Namespace.cpp Source File

Harg_1_Klassen_Namespace.cpp

00001 #include <stdio.h>
00002 #include <iostream>
00003  
00004 enum eckig {ja,nein};
00005 
00006 namespace Harg  //gibt den namespace an unter dem gearbeitet wird
00007 {
00008     class Kreis         
00009     {
00010         //Zugriff nur über Member-Funktionen
00011         private:          
00012         float m_radius;
00013         eckig hat_ecken; //für die Übergabe, ob rund oder eckig
00014         
00015         public:          
00016         float berechneUmfang();
00017         float berechneFlaeche();
00018         char rundodereckig(); 
00019  
00020         Kreis(float radius, eckig ecken);
00021 };
00022  
00023     Kreis::Kreis(float radius, eckig ecken) 
00024     {
00025         m_radius = radius;
00026         hat_ecken = ecken;
00027     }    
00028  
00029     float Kreis::berechneUmfang() 
00030     {
00031         return (m_radius * m_radius * 3.1415);
00032     }
00033  
00034     char Kreis::rundodereckig() //Funktionsdefinition, ob Ecken oder nicht
00035     {
00036         if (hat_ecken == 1)
00037         {
00038             printf("Der Kreis hat keine Ecken.\n");
00039             return hat_ecken;
00040         }
00041         else 
00042         {
00043             printf("Der Kreis hat Ecken.\n");
00044             return hat_ecken;
00045         }
00046     }
00047 }
00048  
00049 int main ()
00050 {
00051   using namespace Harg;
00052   Kreis meinKreis(4.0, ja); //Erstellung des Objekts "meinKreis"
00053   
00054   float umfang = meinKreis.berechneUmfang();
00055   char corny = meinKreis.rundodereckig(); 
00056   
00057   printf ("Der Umfang beträgt: %f m. %d", umfang, corny); //Ausgabe des Umfangs und des Bool-Werts
00058  
00059   return 0;
00060 }