Site hosted by Angelfire.com: Build your free website today!

Der Heronsche Algorithmus zur Annäherung einer Quadratwurzel an eine Dezimalzahl


Man beginnt mit einem beliebigen Näherungswert a (hier: zahl / 5) und b = zahl / a , sodass das Produkt a*b die Zahl ergibt. Danach bildet man das arithmetische Mittel von a und b, das schon viel näher am Zielwert liegt und speichert es in a; b wird nun wieder zahl / a zugewiesen. Diese beiden Schritte wiederholt man nun solange, bis sich die Werte von a und b nur noch in der (hier) 7. Nachkommastelle unterscheiden. Für die abs()-Funktion, die den Betrag einer Zahl liefert, muss math.h eingebunden werden.

double cm_heron(double zahl) {
     double a = zahl / 5, b = zahl / a;
     while(fabs(a-b) > 0.000001) {
         a = (a + b) / 2;
         b = zahl / a;
     }
     return a;
}


   Computer    Programmieren (incl. C++ Kurs)    Algorithmen    Bücher    

Zeitschriften    Heavy Metal    Mountainbiking    Meine Katze    

Über mich und die Site    Links    Downloads    Gästebuch    HP mit Umfrage