Programmieren
 
 
 
 
 
C-Grundkurs
 
 
 
 
 
.. Beispiel: Volumen einer Kugel
 
 

 
 
 
 
 
Aufgabe:
Scheiben Sie eine C-Funktion, welche das Volumen einer Kugel aus deren Radius berechnen kann. Die Funktion soll den Namen kugelVol() erhalten und ihre Wirkung über ein Testprogramm bestätigt werden.

Theorie:
Die Formel zur Berechnung des Volumens V einer Kugel aus dem Radius r lautet ..

V = ¾ • r³ • pi
 
 
 
 

 


 

#include <math.h>                              // für M_PI
#include <stdio.h>                             // für printf()

double kugelVol (double Radius);               // Deklaration


// Testprogramm der Funktion kugelVol(). Der Radius muss im
// Quelltext angegeben werden und die Rückgabe der Funktion
// wird der doppeltgenauen Variablen volumen übergeben. Beide
// Variablen werden zum Bildschirm ausgegeben.

void main(void)
{
  double radius = 15.36;
  double volumen= 0;

  volumen= kugelVol(radius);                  // Aufruf
  
  printf ("Volumen einer Kugel mit r= %f ist %f",
                               radius, volumen);
  getch();
}


// kugelVol()
// Funktion berechnet das Volumen einer Kugel aus dem übergebenen
// Radius. Die Rückgabe entspricht dem Volumen. Die Kreiskonstante
// pi ist in der Headerdatei als Konstante M_PI per #define, den
// Fähigkeiten des Fliesskommaprozessors angemessen, abgelegt.

double kugelVol (double rad)                   // Definition
{                                      
  double vol= 0;
  vol= 4/3* rad* rad* rad* M_PI;
  
  return(vol);
}

 


 

 

 

 

 

Zur Funktion kugelVol():


Deklaration:

double kugelVol (double Radius);

Die im Programm benutzte Deklaration beinhaltet neben den Angaben, die der Compiler unbedingt benötigt, auch solche Angaben, die ein Benutzer der Funktion gebrauchen kann. Dies ist die Benennung der zu übergebenden Variablen Radius. Der Compiler benötigt diesen Variablennamen nicht. Für ihn würde die kürzere Beschreibung .. reichen.

double kugelVol (double);


Übergabeparameter:

Der Radius kann der Funktion als konstante Zahl, als Inhalt einer Variable oder als berechenbarer Ausdruck (z.B. als Funktion, die double zurückgibt) übergeben werden.


Rückgabe:

Das berechnete Volumen als doppeltgenaue Fliesskommazahl. (double)


Hinweis:

In der Headerdatei math.h sind durch die #define Präprozessordirektive einige mathematische Konstante festgelegt. Unter anderem auch die Kreiskonstante pi ..


#define M_E 2.71828182845904523536

#define M_LOG2E 1.44269504088896340736

#define M_LOG10E 0.434294481903251827651

#define M_LN2 0.693147180559945309417

#define M_LN10 2.30258509299404568402

#define M_PI 3.14159265358979323846

#define M_PI_2 1.57079632679489661923

#define M_PI_4 0.785398163397448309616

#define M_1_PI 0.318309886183790671538

#define M_2_PI 0.636619772367581343076

#define M_1_SQRTPI 0.564189583547756286948

#define M_2_SQRTPI 1.12837916709551257390

#define M_SQRT2 1.41421356237309504880

#define M_SQRT_2 0.707106781186547524401


.. man sollte in eigenen Programmen diese Konstanten benutzen, denn sie entsprechen den Fähigkeiten des Fließkommasystems der vorliegenden IDE.

 

 

 

 

www..de