Podstawowe przybliżenia w Pythonie

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

Aproksymacja oznacza oszacowanie wartości czegoś, co nie jest do końca dokładne, ale prawie poprawne. Odgrywa istotną rolę w nauce i technologii. Zacznijmy od najczęstszego przykładu. Czy kiedykolwiek używałeś dokładnej wartości pi? Oczywiście nie. Jest to nieskończona liczba irracjonalna o bardzo długim znaczeniu. Jeśli nadal będziemy wpisywać dokładną wartość Pi, być może nawet ten artykuł nie wystarczy do tego:

3.14159 26535 89793 23846 26433 83279 ... 

Więc tutaj, gdzie przybliżenie odgrywa rolę. Zwykle przybliżamy Pi jako 3.14 lub w kategoriach racjonalnych 22/7 . Kiedy dotarłeś do liceum, prawdopodobnie widziałeś szersze zastosowanie przybliżeń w matematyce, które wykorzystują różniczki do aproksymacji wartości wielkości, takich jak (36,6) ^ 1/2 lub (0.009) ^ 1/3. W informatyce możemy użyć aproksymacji, aby znaleźć wartość lub przybliżyć wartość czegoś za pomocą pętli.

Na przykład: aproksymacja pierwiastka sześciennego dowolnej liczby. Spójrz na poniższy proces:


# program w Pythonie do aproksymacji
# pierwiastek kostki z 27

zgadnij = 0.0

cube = 27

przyrost = 0,0001

epsilon = 0.1


# Znajdź przybliżoną wartość

while abs (zgadnij * * 3 - cube) > = epsilon:

odgadnij + = przyrostem


# Sprawdź przybliżoną wartość

if abs (zgadnij * * 3 - cube) > = epsilon:

print ( "Niepowodzenie w kostce głównej" , cube)

else :

print (zgadnij, " jest blisko korzenia kostki " , cube)

Wyjście powyższego kodu:

2.9963000000018987 to blisko pierwiastka sześciennego 27 

Jak widać, 2,99 nie jest dokładną wartością (27) ^ 1/3 , ale jest bardzo zbliżone do dokładnej wartości 3. To właśnie nazywamy przybliżeniem. Tutaj użyliśmy serii obliczeń, aby przybliżyć wartość. Najpierw deklarujemy zmienną guess = 0.0 , którą będziemy zwiększać w pętli, aż zbliży się do pierwiastka kostki o wartości 27. Inna zmienna epsilon jest wybierana tak mało, jak to możliwe, uzyskać dokładniejsze znaczenie. Wiersz gdy abs (zgadnij ** 3 - kostka) > = epsilon: zajmie się tym. Jeśli wyjdzie z pętli z wartością większą niż epsilon , oznacza to, że przekroczyliśmy już przybliżoną wartość i nie przeszliśmy testu. W przeciwnym razie zwróci wartość odgadnięcia.