Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Brauche Hilfe bei dem Heron Verfahren

  Alt 12. Dez 2005, 09:37
Herzlich willkommen in der Delphi-PRAXiS, Tobias.

Bis Freitag ist ja noch reichlich Zeit. Ich vermute, dass das Näherungsverfahren nach Heron mit dem mir bekannten Babylonischen Wurzelziehen identisch ist. Mit den Vorgaben deines Lehrers steht die Signatur deiner Funktion schon fest:

function Wurzel(a: extended): extended; Die Lösungsidee hast du ja auch schon genannt bekommen. Du prüfst in einer Schleife - schließlich ist es ja ein Näherungsverfahren - für einen geeigneten Startwert r (z.B. 1 oder a/2) ob das Quadrat dieses Wertes nahe genug bei deinem Wert a liegt. Du brauchst also noch eine Konstante epsilon, mit der du das Abbruchkriterium der konvergierenden Folge in deiner Schleife formulieren kannst.

const epsilon: extended = 1 / 1000000; // 6 Nachkommastellen Solange der Abstand noch zu groß ist, ersetzt du den Ausgangswert r durch einen verbesserten Näherungswert, indem du das arithmetische Mittel aus r und a/r - das sind genau die Seitenlängen eines Rechtecks mit der Fläche a - bildest.

Und jetzt bist du dran.

Grüße vom marabu
  Mit Zitat antworten Zitat