Kalkulatory Matematyczne
Kalkulator Modulo


Kalkulator Modulo

Kalkulator modulo znajduje resztę z dzielenia dwóch racjonalnych/nieracjonalnych liczb dodatnich/ujemnych. Można również dowiedzieć się, jak ręcznie znaleźć resztę z dzielenia (moduł).

Moduł

1

Wystąpił błąd w twoim obliczeniu.

Spis treści

  1. Obliczenia bez użycia kalkulatora modulo
    1. Przykład
  2. Demonstracja zegarowa zasady modulo
    1. Przykład
  3. Użycie Modulo
    1. Określanie Liczb Parzystych i Nieparzystych
    2. Konwersja Jednostek
    3. Określanie Roków Przestępnych
  4. Generatory liczb losowych
    1. Kryptografia
  5. Podsumowanie

Kalkulator Modulo

Operacja modulo to metoda znajdowania reszty z dzielenia. Specyfika operacji modulo polega na tym, że zwraca ona resztę jako liczbę całkowitą.

Wyobraź sobie, że masz troje dzieci. Kupujesz pudełko cukierków zawierające ich 20. Chciałbyś podzielić wszystkie cukierki równo i sprawiedliwie między swoje dzieci. A resztę zjeść samemu, bez konieczności cięcia lub łamania cukierka. Twoje dzieci są jeszcze w szkole. Więc możesz najpierw ustalić resztę po podziale i zjeść swoją liczbę cukierków.

To właśnie przypadek, w którym możesz użyć operatora modulo. Może być on również reprezentowany jako znak % lub mod. W przypadku operacji z małymi liczbami obliczenia możesz przeprowadzić w głowie. Pracując z dużymi liczbami, wygodniej będzie korzystać z kalkulatora modulo.

Równanie można przedstawić w następujący sposób:

Dzielna = (Iloraz × Dzielnik) + Reszta

W naszym przypadku:

  • dzielna to 20 (całkowita liczba cukierków);
  • dzielnik to 3 (liczba dzieci);
  • iloraz to 6 (liczba cukierków na każde dziecko);
  • reszta to 2 (liczba cukierków, którą możesz wziąć dla siebie).

Jeśli używasz operacji modulo, możesz zapisać to w następującej formie:

x % y = r

lub

x mod y = r

Gdzie x to dzielna, y to dzielnik, a r to reszta.

W naszym przypadku:

20 % 3 = 2

Obliczenia bez użycia kalkulatora modulo

Weźmy konkretny przypadek jako przykład.

Przykład

Wayan mieszka na Bali i buduje mały pensjonat z sześcioma jednostkami mieszkalnymi. Zamierza wyłożyć płytkami łazienki. Jego sąsiad, Gede, który już zakończył budowę swojego hotelu, proponuje Wayanowi znaczną zniżkę na zakup pozostałych płytek.

Sąsiad policzył 15 pudełek w swoim magazynie, z których każde zawiera 4 płytki o wymiarach 60 × 60 cm oraz dwie płytki oddzielnie. Czyli łącznie jest to 62 płytki. A Gede chce sprzedać wszystkie płytki naraz.

Teraz Wayan musi się dowiedzieć, ile łazienek będzie mógł wyłożyć tymi płytkami. I ile płytek prawdopodobnie zostanie niewykorzystanych?

Jak znaleźć resztę z dzielenia ręcznie bez użycia kalkulatora modulo?

Wayan zmierzył rozmiar standardowej łazienki w swoim pensjonacie i zdał sobie sprawę, że potrzebuje około 14 płytek na pokój.

Przeprowadźmy ręczne obliczenia!

  1. Zdecyduj się na liczbę początkową lub dzielną. W naszym przypadku jest to 62, czyli liczba płytek oferowanych przez sąsiada.
  2. Określ dzielnik. To jest 14—średnia liczba płytek na standardową łazienkę.
  3. Podziel dzielną przez dzielnik i zaokrąglij wynik do pełnej liczby. 62 / 14 = 4,428571428571429, czyli 4. Więc Wayan może użyć płytek na cztery łazienki.
  4. Pomnóż zaokrąglony wynik dzielenia przez dzielnik. A to będzie 4 × 14 = 56. Tyle płytek potrzeba na cztery pokoje.
  5. Odejmij ten wynik mnożenia od oryginalnej dzielnej. Czyli 62 - 56 = 6. To pozostawia Wayanowi sześć dodatkowych płytek.

W uproszczonej i skróconej formie możemy zapisać tę operację jako:

62 % 14 = 6

lub

62 mod 14 = 6

Wayan uznał, że to dobra opcja, ponieważ powinien mieć około 10% rezerwy płytek na wypadek przycinania lub nieporozumień. A płytki do pozostałych dwóch łazienek kupi w lokalnym sklepie budowlanym.

Kalkulator mod mógłby dostarczyć ten wynik w ciągu kilku sekund.

Demonstracja zegarowa zasady modulo

Rodzaj matematyki zwany "arytmetyką modularną" zajmuje się strukturami cyklicznymi. Najłatwiej reprezentować to na tarczy z cyklem 12. Dla matematyka tarcza ma mod 12.

Jeśli chcesz sprawdzić, czy można podzielić 251 godzin na dni bez reszty, możesz zastosować operację

251 mod 24

Wynik to 11, więc odpowiedź brzmi nie! Możemy odpowiedzieć "tak" tylko wtedy, gdy wynik jest równy 0.

Przykład

Daniel chce pojechać autobusem z Atlanty do Miami. Odjeżdża o 13:00, a podróż trwa 15 godzin. Która będzie godzina, gdy dotrze? To będzie

1 + 15 mod 12

czyli 4. W jego przypadku będzie to 4 rano.

Użycie Modulo

Określanie Liczb Parzystych i Nieparzystych

Jednym z najbardziej podstawowych zastosowań operatora modulo jest ustalanie, czy liczba jest parzysta czy nieparzysta. Jest to możliwe, ponieważ x % 2 zawsze zwraca 0 lub 1. Liczby parzyste zawsze zwracają 0, ponieważ są równo podzielone przez 2, podczas gdy liczby nieparzyste zawsze zwracają resztę 1.

Najczęstszym przypadkiem użycia modulo w programowaniu jest, gdy drukujesz tabelę w swojej aplikacji i chcesz na zmianę kolorować wiersze. Możesz chcieć je pokolorować na jasnoniebiesko i jasnoszaro, więc sprawdzasz modulo, aby zobaczyć, czy jesteś w wierszu parzystym czy nieparzystym.

Konwersja Jednostek

Konwersja jednostek to typowy przykład praktycznego zastosowania operacji modulo. Jest zwykle używane, gdy chcemy przekonwertować mniejszą jednostkę, taką jak minuty, cale lub centymetry, na większą jednostkę, taką jak godziny, mile lub kilometry. Liczby dziesiętne lub ułamkowe nie zawsze są pomocne w takich sytuacjach.

Na przykład, jeśli chcemy wiedzieć, ile godzin jest w 373 minutach, wynik wyrażony jako 6 godzin i 13 minut może być bardziej wartościowy niż 6,2166666666666666667 godzin.

Standardowe dzielenie (z zaokrągleniem do najbliższej pełnej liczby) określa liczbę godzin, a operacja modulo jest używana do uwzględnienia pozostałych minut. Niezależnie od tego, czy chodzi o czas, odległość, ciśnienie, energię czy przechowywanie danych, można użyć tego ogólnego podejścia do konwersji jednostek.

Określanie Roków Przestępnych

Kolejnym przykładem użycia operatora modulo jest sprawdzenie, czy dany rok jest rokiem przestępnym.

Rok przestępny to rok kalendarzowy zawierający dodatkowy dzień w kalendarzu słonecznym. Dodatkowy dzień w roku przestępnym to 29 lutego.

1 stycznia 45 p.n.e. rzymski dyktator Gajusz Juliusz Cezar wprowadził kalendarz opracowany w Rzymie przez astronomów aleksandryjskich. Kalendarz opierał się na obliczeniu, że rok astronomiczny trwa około 365,25 dni (365 dni i 6 godzin). Ten kalendarz nazwano kalendarzem juliańskim.

Aby wyrównać sześciogodzinne przesunięcie, Cezar wprowadził rok przestępny. Przez trzy kolejne lata w roku było 365 dni. A każdego roku, który jest wielokrotnością czwórki, dodawano jeden dodatkowy dzień w lutym.

Jednak z biegiem czasu okazało się, że ta reguła sama w sobie nie wystarcza.

Średni rok tropikalny (czas między dwoma równonocami wiosennymi) wynosi dokładniej około 365 dni i 5 godzin i 49 minut. Różnica między średnim rokiem a rokiem kalendarza juliańskiego (365 dni i 6 godzin) wynosiła około 11 minut. Więc w około 128 latach te 11 minut mogło się zsumować do całego dodatkowego dnia.

Aby zrekompensować nagromadzone błędy i uniknąć podobnego przesunięcia w przyszłości, papież Grzegorz XIII zreformował kalendarz w 1582 roku. Dodał dodatkowe zasady dla lat przestępnych. Lata przestępne były nadal wielokrotnością czwórki, ale wprowadzono wyjątki dla lat, które są wielokrotnością 100. Takie lata były latami przestępnymi tylko wtedy, gdy były również podzielne przez 400.

Zasady określania roku przestępnego stały się następujące:

  • Rok, którego liczba jest wielokrotnością 400, jest rokiem przestępnym.
  • Pozostałe lata, których suma jest wielokrotnością 100, nie są latami przestępnymi (na przykład lata 1700, 1800, 1900, 2100, 2200, 2300);
  • Pozostałe lata, których liczba jest wielokrotnością 4, są latami przestępnymi.
  • Wszystkie inne lata nie są przestępne.

Tak więc lata 1700, 1800 i 1900 nie są latami przestępnymi, ponieważ są wielokrotnością 100 i nie są wielokrotnością 400. Lata 1600 i 2000 są latami przestępnymi, ponieważ są wielokrotnością 400.

Wróćmy do naszego problemu.

Wiemy, że:

  • Jeśli liczba roku modulo 4 = 0, a liczba roku modulo 100 ≠ 0, to jest to rok przestępny.
  • Jeśli liczba roku modulo 400 = 0, to jest to rok przestępny.
  • W każdym innym przypadku nie jest to rok przestępny.

Za pomocą prostego skryptu Pythona możesz stwierdzić, czy dany rok jest rokiem przestępnym, czy nie. Wyglądałoby to tak:

year = int(input('Wprowadź rok: '))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) :

    print(year, "jest rokiem przestępnym.")

else:

    print(year, "nie jest rokiem przestępnym.")

Popularne zastosowania operatora modulo w programowaniu obejmują:

  • określanie, czy coś jest parzyste czy nieparzyste;
  • wykonywanie określonej operacji na każdym N-tym elemencie listy;
  • ograniczanie liczby do zakresu;
  • rotowanie przez ograniczone opcje (cykliczna tablica);
  • odwracanie liczby;
  • konwersja danych liniowych na macierz;
  • określanie, czy tablice są obróconymi wersjami siebie nawzajem;
  • paginacja.

Generatory liczb losowych

Dopasowanie modulo jest często używane w sprzęcie komputerowym i telekomunikacyjnym do tworzenia numerów kontrolnych i uzyskiwania losowych liczb w ograniczonym zakresie, takich jak generator losowych liczb zgodnych. Derrick Henry Lemer zaproponował liniową metodę zgodną w 1949 roku.

Liniowa metoda zgodna działa według wzoru:

$$X_{n+1} = (a × X_n + c) \mod m$$

Gdzie:

  • m to modulo,
  • a to mnożnik,
  • c to przyrost,
  • X₀ to wartość początkowa.

Na przykład, dla m = 11, X₀ = 9, a = 9, c = 9, otrzymujemy następującą serię losowych liczb:

9, 2, 5, 10, 0, 9, 2, 5, 10, 0, 9

Kryptografia

Kryptografowie uwielbiają modulo. Ponieważ gdy używane jest z naprawdę dużymi liczbami, można stworzyć z modulo coś znanego jako "funkcje jednokierunkowe". Te specjalne funkcje ułatwiają obliczanie czegoś w jednym kierunku, ale nie w przeciwnym.

Jeśli 9 jest wynikiem kwadratu, możesz szybko stwierdzić, że wejściem była 3. Możesz sobie wyobrazić cały proces przed sobą od początku do końca. Jeśli powiem ci, że 9 jest wynikiem modulo 29, trudniej jest stwierdzić, co jest na wejściu.

Kryptografowie lubią ten pomysł, ponieważ mogą używać dzielenia z resztą do generowania ogromnych liczb pierwszych w celu tworzenia kluczy kryptograficznych.

Podsumowanie

Czy próbujesz równomiernie rozłożyć przedmioty w pudełku, wiedzieć, czy liczba jest podzielna przez inną liczbę, czy po prostu próbujesz obliczyć czas, modulo jest zawsze obecne. We wszystkich tych przypadkach reszta jest równie ważna jak iloraz w operacji dzielenia.

Czasami problem jest prosty i intuicyjny. Jednak zawsze lepiej jest użyć kalkulatora modulo online, aby znaleźć rozwiązanie, gdy sprawy są skomplikowane.