Kalkulator reszty z dzielenia i modulo
Dzielenie z resztą zapisuje się jako a = n · q + r, gdzie q to iloraz całkowity, a r — reszta.
Przejdź do kalkulatora
Dzielenie z resztą zapisuje się jako a = n · q + r, gdzie q to iloraz całkowity, a r — reszta. Dla 100 ÷ 7 wychodzi q = 14, r = 2, bo 100 = 7 · 14 + 2. Przy liczbach ujemnych uwaga: matematyczne modulo daje zawsze wynik nieujemny (−7 mod 3 = 2), a operator % w C, Javie i JavaScripcie — wynik ze znakiem dzielnej (−7 % 3 = −1). Kalkulator pokazuje obie wartości.
Spis treści
Wyniki
Wyniki dla dzielenia całkowitego.
Szczegóły obliczeń
Reszta z dzielenia przez typowe dzielniki
Dla liczby wpisanej wyżej. Tabela przelicza się razem z kalkulatorem.
| Dzielnik | Iloraz całkowity | Reszta | Dzieli bez reszty? |
|---|---|---|---|
| 50 | 0 | tak | |
| 33 | 1 | nie | |
| 25 | 0 | tak | |
| 20 | 0 | tak | |
| 16 | 4 | nie | |
| 14 | 2 | nie | |
| 12 | 4 | nie | |
| 11 | 1 | nie | |
| 10 | 0 | tak | |
| 8 | 4 | nie | |
| 4 | 4 | nie | |
| 1 | 40 | nie | |
| 1 | 0 | tak |
Jak działa kalkulator
Dzielenie z resztą to rozłożenie liczby a na wielokrotność dzielnika plus to, co zostaje: a = n · q + r. Iloraz q jest liczbą całkowitą, a reszta r mieści się między 0 a |n| − 1.
Przykład: 100 ÷ 7. Siódemka mieści się w setce 14 razy (7 · 14 = 98), zostaje 2. Zapis: 100 = 7 · 14 + 2, czyli reszta wynosi 2.
Modulo to nazwa tej operacji w programowaniu i teorii liczb. Zapis a mod n albo a % n oznacza właśnie resztę. Dwie liczby dające tę samą resztę nazywa się przystającymi modulo n i zapisuje a ≡ b (mod n).
Do czego to służy: parzystość (mod 2), dzień tygodnia (mod 7), godziny (mod 12 i 24), minuty i sekundy (mod 60), cyfra kontrolna w PESEL-u i numerze konta, rozkładanie elementów po kolei między n pojemników.
Reszta z dzielenia jest narzędziem, nie ciekawostką. Na niej opiera się sprawdzanie podzielności: liczba jest liczbą pierwszą wtedy, gdy żadne dzielenie poniżej jej pierwiastka nie daje reszty zero. Ten sam mechanizm zamienia liczbę na inny system zapisu — konwerter systemów liczbowych dzieli przez podstawę i zbiera kolejne reszty, czytane od końca.
Jak liczymy (metodologia i wzory)
Dwie konwencje dla liczb ujemnych
Tu zaczyna się jedyna realna pułapka. Wynik zależy od tego, jak zaokrągla się iloraz:
- Dzielenie w dół (floor):
q = ⌊a/n⌋. Dla −7 ÷ 3 daje to ⌊−2,333⌋ = −3, więcr = −7 − 3 · (−3) = 2. Reszta jest zawsze nieujemna dla dodatniego dzielnika. Tak liczy matematyka, Python i Ruby. - Obcięcie do zera (truncate):
q = trunc(a/n). Dla −7 ÷ 3 daje to −2, więcr = −7 − 3 · (−2) = −1. Reszta ma znak dzielnej. Tak działa operator%w C, C++, Javie, JavaScripcie i PHP.
Oba wyniki są poprawne — różnią się pytaniem, na które odpowiadają. Różnica ilorazów o jeden przesuwa resztę dokładnie o dzielnik: 2 − 3 = −1.
Jak uzyskać wynik nieujemny w JavaScripcie
Zamiast a % n trzeba napisać ((a % n) + n) % n. To standardowy idiom — dodanie dzielnika przesuwa ujemną resztę do właściwego przedziału, a drugie modulo przycina wynik, gdy pierwsza reszta była już nieujemna.
Kongruencja
Zapis a ≡ b (mod n) znaczy, że a i b dają tę samą resztę z dzielenia przez n, czyli że ich różnica jest podzielna przez n. Na tym opiera się arytmetyka modularna — podstawa kryptografii klucza publicznego i cyfr kontrolnych.
FAQ
Jak obliczyć resztę z dzielenia?
Podziel a przez n, weź część całkowitą ilorazu i pomnóż z powrotem przez n — to, co zostaje do a, jest resztą. Dla 100 ÷ 7: 7 · 14 = 98, więc reszta to 2.
Co to jest modulo?
To nazwa operacji „reszta z dzielenia”. Zapis a mod n lub a % n zwraca resztę. Wynik zawsze mieści się między 0 a n − 1 przy dodatnim dzielniku.
Ile wynosi −7 mod 3?
2 w konwencji matematycznej (i w Pythonie), ale −1, jeśli użyjesz operatora % w C, Javie, PHP lub JavaScripcie. Różnica bierze się ze sposobu zaokrąglania ilorazu: w dół (−3) albo do zera (−2).
Dlaczego JavaScript daje inny wynik niż Python?
Bo używają innej konwencji dzielenia. Python zaokrągla iloraz w dół, więc reszta jest zawsze nieujemna. JavaScript obcina iloraz do zera, więc reszta przejmuje znak dzielnej. Oba wyniki spełniają a = n · q + r, tylko z różnym q.
Jak w JavaScripcie uzyskać zawsze dodatnią resztę?
Zamiast a % n napisz ((a % n) + n) % n. Dodanie dzielnika przesuwa ujemny wynik do właściwego przedziału, a drugie modulo nic nie zmienia, gdy reszta była już nieujemna.
Co znaczy zapis a ≡ b (mod n)?
Że a i b dają tę samą resztę z dzielenia przez n — równoważnie, że ich różnica dzieli się przez n. Na przykład 100 ≡ 44 (mod 7), bo obie dają resztę 2.
Jak sprawdzić parzystość liczby?
Podziel modulo 2. Reszta 0 oznacza liczbę parzystą, reszta 1 — nieparzystą. To najczęstsze zastosowanie modulo w programowaniu.
Do czego używa się reszty z dzielenia w praktyce?
Do wszystkiego, co jest cykliczne: dni tygodnia (mod 7), godziny (mod 12 i 24), minuty (mod 60), rozkładanie zadań po kolei między n serwerów. Także do cyfr kontrolnych — PESEL, NIP i numer konta bankowego opierają się na arytmetyce modularnej.
Czy reszta może być większa od dzielnika?
Nie. Z definicji reszta spełnia 0 ≤ r < |n| — gdyby była większa lub równa dzielnikowi, dałoby się jeszcze raz odjąć dzielnik i zwiększyć iloraz.
Założenia i ograniczenia
- Kalkulator pracuje na liczbach całkowitych. Wartości z przecinkiem są zaokrąglane do najbliższej całkowitej przed liczeniem.
- Główny wynik („Reszta”) podaje konwencję matematyczną, czyli dzielenie w dół. Wartość operatora
%pokazana jest osobno. - Dzielenie przez zero nie jest określone — kalkulator mówi to wprost zamiast pokazywać nieskończoność.
- Zakres to ±1 000 000 000. Powyżej 2⁵³ arytmetyka przeglądarki przestaje być dokładna dla liczb całkowitych, więc granica jest ustawiona z dużym zapasem.
Źródła i aktualizacja
- Twierdzenie o dzieleniu z resztą: dla każdych całkowitych a i n ≠ 0 istnieje dokładnie jedna para q, r taka, że
a = nq + ri0 ≤ r < |n|. - Konwencje zaokrąglania ilorazu: ISO/IEC 9899 (C) — obcięcie do zera; dokumentacja języka Python — dzielenie w dół.
- Arytmetyka modularna i kongruencje — Gauss, Disquisitiones Arithmeticae.