Rozdział 5 · Pobawmy się liczbami!

Korzenie i odległości

Od twierdzenia pitagorejskiego ręcznie do gotowych funkcji, które obliczają dla ciebie odległość.

isqrt() — pierwiastek całkowity

math.sqrt() zawsze wraca float. Jeśli potrzebujesz int — na przykład dla tak dużych liczb, To, co float zaczyna tracić na celności, jest tam math.isqrt(): on odrzuca część ułamkową i pracuje tylko z liczbami całkowitymi.

isqrt.py
import math

print(math.sqrt(10))     # 3.1622776601683795
print(math.isqrt(10))    #3 – cała część korzenia, brak ułamków i brak utraty precyzji

hypot() – przeciwprostokąt bez ręcznego Pitagorasa

Jeśli znane są długości dwóch nóg trójkąta prostokątnego, można znaleźć długość przepustki Formuła c = sqrt(a**2 + b**2) — ale math już wie, jak to zrobić za pomocą jednej funkcji:

a = 3b = 4c = 5
hypot(3, 4) = 5 – klasyczny trójkąt prostokątny 3-4-5
hypot.py
import math

print(math.sqrt(3 ** 2 + 4 ** 2))   #5.0 – Podręcznik Twierdzenia Pitagorasa
print(math.hypot(3, 4))            # 5.0 — to samo, krócej i precyzyjniej

dist() to odległość między dwoma punktami

math.dist() jest hypot(), ale dla dwóch punktów na płaszczyźnie (lub w przestrzeni), a nie dla jednego trójkąta: sama oblicza przyprostokątne jako różnicę współrzędnych.

xyA(2, 1)B(6, 4)
Odległość między A i B to przeciwprostokątna trójkąta prostokątnego, zbudowanego na ich współrzędnych
dist.py
import math

A = (2, 1)
B = (6, 4)
print(math.dist(A, B))   #5.0 – Ta sama odległość obliczona na podstawie współrzędnych
Skąd wziął się ten numer 5.0
Różnica x: 6 − 2 = 4. Różnica y: 4 − 1 = 3. To dokładnie nogi trójkąta 3-4-5 powyżej — dist() pod maską robi dokładnie to samo, co hypot(), sam tylko liczy przyprostokątne za ciebie.
Praktyka: Korzenie i odległości
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →