Menu
Coddy logo textTech

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.2

Oto 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.8
challenge icon

Wyzwanie

Początkujący

Napisz 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 modulo a modulo 2 
  • e (i32), która będzie przechowywać wynik operacji modulo a modulo 3
  • f (f64), która będzie przechowywać wynik operacji modulo b modulo 1.5
  • g (f64), która będzie przechowywać wynik operacji modulo b modulo 3.9
  • h (i32), która będzie przechowywać wynik operacji modulo c modulo 10

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);
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Rust online