Funkcja modulo
Funkcja modulo dzieli dwie liczby i zwraca resztę. Wymaga takich samych wartości wejściowych jak operacja dzielenia, ale zwraca „pozostałą” wartość zamiast wyniku dzielenia. Na przykład:
- 7 modulo 3 = 1
- 8 modulo 3 = 2
Jeśli nie ma reszty, wynikiem jest zero.
- 9 modulo 3 = 0
W matematycznych wzorach operator modulo lub „modulo” jest często przedstawiany za pomocą znaku procentu. Na przykład 7 modulo 3 można zapisać jako następujące wyrażenie:
- 7 % 3 = 1
W informatyce funkcję modulo można zapisać jako mod(x,y) lub podobnie, zależnie od języka programowania. Na przykład:
- mod(7,3) = 1
Powyższa funkcja dzieli pierwszą wartość (dzielną) przez drugą wartość (dzielnik) i zwraca resztę. Ponieważ 7 ÷ 3 = 2r1, wynikiem mod(7,3) jest 1.
Zastosowania funkcji modulo
Funkcja modulo ma kilka zastosowań w programowaniu komputerowym. Ponieważ wynik musi być mniejszy od dzielnika, może ograniczać wyniki do określonego zakresu. Na przykład mod(x,4) może zwracać tylko 0, 1, 2 lub 3, zakładając, że x jest liczbą całkowitą. Jest przydatna do sprawdzania co n-tej wartości lub kategoryzowania wyników do ograniczonej liczby „kategorii”.
W większości języków programowania wartość 0 jest uznawana za fałsz, a inne liczby za prawdę. Dlatego funkcja modulo może zwracać wynik typu logicznego — false, jeśli dwie liczby dzielą się bez reszty, oraz true, jeśli nie dzielą się bez reszty. Poniżej znajduje się przykład funkcji modulo w instrukcji if:
if (mod(x,5)) then { ... }
Jeśli x nie dzieli się bez reszty przez 5, wykona się kod w klauzuli then. Jeśli x dzieli się przez pięć — 5, 10, 15, 20 itd. — kod się nie wykona.
NOTE: Funkcje modulo często przyjmują jako argumenty dwie liczby całkowite. Akceptowane są jednak również liczby zmiennoprzecinkowe. Dwie wartości całkowite zawsze dają liczbę całkowitą, ale co najmniej jedno wejście ułamkowe może dać wynik ułamkowy. Na przykład 8 % 2.5 = 0.5, ponieważ 8 ÷ 2.5 = 3r0.5.
Sprawdź swoją wiedzę