Einzelnen Beitrag anzeigen

Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#2

Re: Brauche Hilfe bei dem Heron Verfahren

  Alt 11. Dez 2005, 17:25
soweit ich mich erinnern kann, berechnet der Heron-Algo die Quadratwurzel einer Zahl mithile von Annäherung (oder?)

wenn das stimmt kann man ihn ähnlich wie folgt implementieren

Delphi-Quellcode:
function GetSqrtHeron(x,y, Genauigkeit: Extended): Extended;
var D, Diff: Extended;
begin
  D:=1; //Um wieviel je schritt angenähert wird
  Diff:=Abs(X-Y); //Differenz der Werte
  while Diff>Genauigkeit do //Solange noch zu ungenau
    begin
    while D>Diff do //Größenordnung anpassen
      D:=D / 10;
    if x>y then //Wenn X größer
      begin
      X:=X-D; //X verkleinern
      Y:=Y+D; //Y vergrößern
      end
    else
      begin
      X:=X+D; //X vergrößern
      Y:=Y-D; //Y verkleinern
      end;
    Diff:=Abs(X-Y); //Differenz neu berechnen
    end;
  Result:=(X+Y) / 2; //Durchschnitt => Erhöhte Genauigkeit
end;
Keine Garantie für Fehlerfreiheit^^
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat