Rozdział 5 · Pobawmy się liczbami!

Trygonometria bez strachu

sin i cos to po prostu współrzędne punktu na okręgu o promieniu 1. Cała trygonometria opiera się na tym jednym obrazku.

Trygonometria przeraża wielu ludzi nie samą matematyką, lecz notacją. W rzeczywistości idea jest prosta: Dla dowolnego punktu na okręgu o promieniu 1 (okrąg jednostkowym), współrzędne tego punktu są I jest cos oraz sin róg.

Stopnie i radiany

Python (jak prawie cała matematyka poza szkolną geometrią) liczy kąty w radiany, nie w stopniach. Pełny obrót to 360° lub, co jest tym samym, radianów:

gradusy_radiany.py
import math

print(math.radians(180))    # 3.141592653589793 — czyli π
print(math.degrees(math.pi)) # 180.0
math.sin(90) NIE jest tym, co myślisz
math.sin(90) liczy sinus kąta na poziomie 90 radiany (to ogromny kąt, wiele pełnych obrotów), nie 90 stopni! Przed funkcjami trygonometrycznymi prawie zawsze potrzebujesz math.radians(): math.sin(math.radians(90)).

Unit Circle

xy45°90°
Jednostkowy okrąg (promień 1) — Współrzędne punktu są równe (cos kąta, sin kąta)
edinichnaya_okruzhnost.py
import math

ugol_gradusy = 30
ugol_radiany = math.radians(ugol_gradusy)

print(round(math.cos(ugol_radiany), 3))   #0,866 to współrzędna x punktu na okręgu
print(round(math.sin(ugol_radiany), 3))   # 0.5   — współrzędna y punktu na okręgu
round() tutaj nie jest przypadkiem
Bez round() math.sin(math.radians(30)) wydaje 0.49999999999999994, nie równomiernie 0.5 — ta sama cecha float, którą omawialiśmy w rozdziale 4. Do porównania kątów również warto użyć tolerancji (na przykład, math.isclose()), nie ==.

tan() i funkcje odwrotne

tan_obratnye.py
import math

print(round(math.tan(math.radians(45)), 3))   # 1.0

# problem odwrotny: znane tan, szukanie kąta
ugol = math.degrees(math.atan(1))
print(ugol)   # 45.0
Praktyka: Trygonometria bez strachu
interaktywny laptop bezpośrednio w przeglądarce – Python 3.14 przez Pyodide, bez instalacji
Otwórz praktykę →