Zig Academy · Lekcja

Liczby zmiennoprzecinkowe: f32 i f64

Pracuj z liczbami ułamkowymi.

Lekcja 2 z 413 kroki

Liczby zmiennoprzecinkowe: f32 i f64 to bezpłatna lekcja Zig Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Zig Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Zig Academy zawiera 4 lekcji w sumie.

Liczby z częścią ułamkową

Gdy potrzebujesz liczb dziesiętnych, Zig oferuje typy zmiennoprzecinkowe. Przechowują one wartości ułamkowe, takie jak 3.14, a nie tylko liczby całkowite.

f64 to częsty wybór

Typ f64 przechowuje zmiennoprzecinkową liczbę podwójnej precyzji, używając 64 bitów. Jest zwykle wybierany wtedy, gdy potrzebujesz dokładności i szerokiego zakresu.

const pi: f64 = 3.14159;

f32 oszczędza pamięć kosztem precyzji

Typ f32 używa 32 bitów. Oszczędza pamięć i może działać szybciej, ale przechowuje mniej cyfr znaczących niż f64.

const ratio: f32 = 0.5;

Zig ma więcej szerokości typów zmiennoprzecinkowych

Oprócz f32 i f64 Zig obsługuje także f16 oraz f128. Wybiera się szerokość, która zapewnia odpowiedni kompromis między precyzją, pamięcią i szybkością.

Literały zmiennoprzecinkowe wymagają kropki

Literał zmiennoprzecinkowy zawiera kropkę dziesiętną, na przykład 2.0. Samo 2 oznacza liczbę całkowitą, czyli inny rodzaj wartości.

const half = 0.5;
const one = 1.0;

Notacja naukowa również działa

Bardzo duże lub małe liczby zmiennoprzecinkowe można zapisywać za pomocą wykładnika. Zapis 1.5e3 oznacza 1.5 razy dziesięć do potęgi trzeciej, czyli 1500.

const big: f64 = 1.5e3;

Działania na liczbach zmiennoprzecinkowych

Na liczbach zmiennoprzecinkowych działają zwykłe operatory. Dzielenie dwóch takich liczb zachowuje część ułamkową, zamiast ją odrzucać.

const result: f64 = 7.0 / 2.0; // 3.5

Liczby zmiennoprzecinkowe są przybliżone

Liczby zmiennoprzecinkowe nie potrafią dokładnie przechować każdej liczby dziesiętnej. Niewielkie błędy zaokrągleń sprawiają, że 0.1 plus 0.2 może nie być dokładnie równe 0.3.

Porównuj z tolerancją

Z powodu zaokrągleń unikaj sprawdzania dokładnej równości liczb zmiennoprzecinkowych. Zamiast tego sprawdzaj, czy różnica jest mniejsza od bardzo małego progu.

const close = @abs(a - b) < 0.0001;

Konwertowanie liczby całkowitej na zmiennoprzecinkową

Aby zamienić liczbę całkowitą na zmiennoprzecinkową, trzeba jawnie użyć @floatFromInt. Zig nigdy nie miesza po cichu tych dwóch rodzajów liczb.

const n: i32 = 10;
const f: f64 = @floatFromInt(n);

Specjalne wartości zmiennoprzecinkowe

Liczby zmiennoprzecinkowe mogą również reprezentować nieskończoność oraz wartość niebędącą liczbą. Pojawiają się one między innymi w wyniku dzielenia przez zero, a biblioteka standardowa nadaje im nazwy.

Szybkie sprawdzenie

Dzielisz jedną liczbę zmiennoprzecinkową przez drugą i chcesz zachować wynik ułamkowy. Co jest prawdą o działaniach zmiennoprzecinkowych w Zig?

Podsumowanie

Używaj f64 dla ogólnych liczb dziesiętnych, a f32, gdy chcesz oszczędzać pamięć. Pamiętaj, że liczby zmiennoprzecinkowe są przybliżone, dlatego porównuj je z tolerancją i rzutuj jawnie. 🎯

Bezpłatny start

Ucz się Zig dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Liczby zmiennoprzecinkowe: f32 i f64” jest bezpłatna?

Tak — pełny tekst „Liczby zmiennoprzecinkowe: f32 i f64” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Zig Academy, przejdź na CoddyKit PRO. Kurs Zig Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Liczby zmiennoprzecinkowe: f32 i f64”?

Pracuj z liczbami ułamkowymi. Ćwiczysz Zig Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Zig Academy?

Nie wymagamy żadnego doświadczenia. Zig Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Liczby zmiennoprzecinkowe: f32 i f64”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Zig Academy?

Tak. Każda lekcja Zig Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Liczby całkowite o określonym rozmiarze: i32, u8, usize
  2. Liczby zmiennoprzecinkowe: f32 i f64
  3. bool, void i typy comptime
  4. Literały liczbowe i podkreślenia
← Powrót do Zig Academy