In der Aufgabe soll ich ein Programm für das Heronverfahren, für das Annähern an die Wurzel einer Zahl schreiben. Um nicht tausend durchläufe machen zu müssen hab ich mir überlegt, dass das Quadrat des angenäherten Ergebnisses minus der Ursprünglichen Zahl kleiner als 0.0001 sein soll(zB wir wollen die Wurzel aus 9. Wir erhalten durch mehrere Durchläufe 3.0000xxx. Hier soll die Schleife dann abbrechen und das Ergebnis ausspucken.
Also ich schreibe einfach mal was ich hab:
Code: Alles auswählen
a = input
%Das ist die Zahl deren Wurzel man moechte.(zB a=9)
s=(a+1)/2
%Das ist der Startwert
for s in range(s,10000000):
x=0.5*(s+(a/s))
if (x**2 - a) < 0.0001: break
else:
x = 0.5*(x+(a+x))
print "Wurzel aus",a,"fuer Startwert",s,"=",x