Operator modulo
Część sekcji Podstawy ścieżki Rust w Coddy. Lekcja 16 z 75.
Operator modulo % zwraca resztę z dzielenia. W Rust używa się go za pomocą prostej składni:
let result = dividend % divisor;- dividend: Liczba, która jest dzielona.
- divisor: Liczba, przez którą dzielona jest dzielna.
- result: Reszta z dzielenia.
Na przykład:
let result = 10 % 3;Tutaj 10 jest dzielone przez 3. 3 mieści się w 10 trzy razy, z resztą 1. Zatem result będzie równe 1.
Zwykle modulo służy do sprawdzania, czy liczba jest parzysta, czy nieparzysta:
- Jeśli liczba jest parzysta, dzielenie jej przez 2 pozostawi resztę równą 0.
- Jeśli liczba jest nieparzysta, dzielenie jej przez 2 pozostawi resztę równą 1.
Przy używaniu modulo z liczbami zmiennoprzecinkowymi (f64) działa ono podobnie jak w przypadku liczb całkowitych, ale zachowuje precyzję dziesiętną. Na przykład:
let result: f64 = 5.2 % 2.0;
// result wynosi 1.2Oto jak to działa: 2.0 mieści się w 5.2 dwa razy (4.0), a reszta wynosi 1.2 (5.2 - 4.0 = 1.2).
Kolejny przykład:
let result: f64 = 7.8 % 3.5;
// result wynosi 0.8Wyzwanie
PoczątkującyNapisz kod, który zainicjalizuje trzy zmienne: a (i32), b (f64) i c (i32) wartościami 9, 2.6 i 11 (odpowiednio).
Następnie zainicjalizuj następujące zmienne:
d (i32), która będzie przechowywać wynik operacji moduloamodulo2e (i32), która będzie przechowywać wynik operacji moduloamodulo3f (f64), która będzie przechowywać wynik operacji modulobmodulo1.5g (f64), która będzie przechowywać wynik operacji modulobmodulo3.9h (i32), która będzie przechowywać wynik operacji modulocmodulo10
Sprawdź wynik i zobacz, jak różne dzielne i dzielniki wpływają na wynik.
Spróbuj swoich sił
fn main() {
// Wpisz swój kod poniżej
// Nie zmieniaj poniższej linii
println!("a = {}", a);
println!("b = {}", b);
println!("c = {}", c);
println!("d = {}", d);
println!("e = {}", e);
println!("f = {}", f);
println!("g = {}", g);
println!("h = {}", h);
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloSkrócone operacje arytmetyczneOperatory porównaniaPorównywanie ciągów znaków7Podstawowe wejście i wyjście
Wyświetlanie w konsoliOdczytywanie danych od użytkownikaPowtórka – do 120Powtórka – prawda czy fałsz5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Powtórka — prosta logikaOperatory logiczne, część 311Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneWiele wartości zwracanychPowtórka – funkcja SigmaPowtórka – funkcja walidująca14Iterowanie po tablicach
Przewodnik po zakresachUlepszona pętla forPożyczanie w pętliTypowe operacje na tablicach3Zmienne – część 2
Deklarowanie typuKonwencje nazewnictwaWnioskowanie o typiePodsumowanie – inicjalizacja zmiennychRzutowanie typów9Pętle
Pętla for dla sekwencjiPętla whileInstrukcja breakInstrukcja continuePętle zagnieżdżoneEtykiety pętliPętla nieskończonaPodsumowanie — dynamiczne dane wejściowe12Podstawy tablic
Deklarowanie tablicTablica jako parametrDostęp do elementówModyfikowanie tablicPodsumowanie — czytelny wydruk tablicy15Operacje na ciągach znaków
Metody ciągów znakówMakro format!Konwersja ciągów znakówPowtórka — formatowaniePoćwicz samodzielnie: Kompilator Rust online