Grundlegende Annäherungen in Python

| | | | | | | | | | | |

Annäherung bedeutet, den Wert von etwas zu schätzen, das nicht ganz genau, aber fast richtig ist. Es spielt eine wichtige Rolle in Wissenschaft und Technologie. Beginnen wir mit dem gängigsten Beispiel. Haben Sie jemals den genauen Pi-Wert verwendet? Natürlich nicht. Es ist eine unendliche irrationale Zahl mit einer sehr langen Bedeutung. Wenn wir weiterhin den genauen Wert von Pi schreiben, reicht vielleicht sogar dieser Artikel dafür nicht aus:

3.14159 26535 89793 23846 26433 83279 ... 

Hier also spielt die Annäherung eine Rolle. Wir nähern uns Pi normalerweise als 3.14 oder rational ausgedrückt als 22/7 . Als Sie auf die High School kamen, haben Sie wahrscheinlich eine breitere Anwendung von Näherungen in der Mathematik gesehen, die Differentiale verwenden, um die Werte von Größen anzunähern, wie (36,6) ^ 1/2 oder (0,009) ^ 1/3. In der Informatik können wir Näherung verwenden, um den Wert zu finden oder den Wert von etwas mithilfe von Schleifen zu approximieren.

Zum Beispiel: Näherung der Kubikwurzel einer beliebigen Zahl. Sehen Sie sich den folgenden Prozess an:


# Python-Programm zur Annäherung an
# Kubikwurzel von 27

rate = 0.0

cube = 27

increment = 0.0001

epsilon = 0,1


# Finden Sie einen ungefähren Wert

while abs (rate < Codeklasse = "Schlüsselwort"> * * 3 - cube) > = epsilon:

rate + = erhöhen


# ungefähren Wert prüfen

if abs (rate * * 3 - Würfel) > = epsilon:

print ( "Failed on the cube root of" , Würfel)

else :

print (schätzen Sie, " ist nah an der Kubikwurzel von " , cube)

Ausgabe des obigen Codes:

2.9963000000018987 ist nahe der Kubikwurzel von 27 

Wie wir sehen können, ist 2,99 nicht der exakte Wert von (27) ^ 1/3 , aber sehr nah am exakten Wert 3. Das nennen wir Annäherung. Hier haben wir eine Reihe von Berechnungen verwendet, um den Wert anzunähern. Zuerst deklarieren wir eine Variable guess = 0.0 , die wir in einer Schleife weiter inkrementieren, bis sie sich der Kubikwurzel von 27 nähert. Eine andere Variable epsilon wird so wenig wie möglich gewählt genauere Bedeutung bekommen. Die Zeile while abs (rate ** 3 - cube) > = epsilon: kümmert sich darum. Wenn es mit einem Wert größer als epsilon aus der Schleife ausbricht, bedeutet dies, dass wir den ungefähren Wert bereits überschritten haben und den Test nicht bestanden haben. Andernfalls wird der Schätzwert zurückgegeben.