Menu
Coddy logo textTech

Operator modulo

Część sekcji Podstawy ścieżki C# w Coddy. Lekcja 16 z 69.

Operator modulo % zwraca resztę z dzielenia. W C# używa się go w prostej składni:

result = dividend % divisor;
  • dzielna: Liczba, która jest dzielona.
  • dzielnik: Liczba, przez którą dzielona jest dzielna.
  • wynik: Reszta z dzielenia.

Na przykład:

result = 10 % 3;

Tutaj 10 jest dzielone przez 3. 3 mieści się w 10 trzy razy, a reszta wynosi 1. Zatem result będzie równe 1.

Zazwyczaj modulo służy do sprawdzania, czy liczba jest parzysta czy nieparzysta:

  • Jeśli liczba jest parzysta, dzielenie jej przez 2 da resztę 0.
  • Jeśli liczba jest nieparzysta, dzielenie jej przez 2 da resztę 1.

Przy używaniu operatora modulo z liczbami zmiennoprzecinkowymi (typu double) działa on podobnie jak w przypadku liczb całkowitych, ale zachowuje precyzję części dziesiętnej. Na przykład:

double result = 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:

double result = 7.8 % 3.5;
// result wynosi 0.8
challenge icon

Wyzwanie

Początkujący

Napisz kod, który inicjalizuje trzy zmienne: a (int), b (double) i c (int) wartościami 9, 2.6 i 11 (odpowiednio).

Następnie zainicjalizuj następujące zmienne:

  • d (int), która będzie przechowywać wynik operacji modulo a przez 2 
  • e (int), która będzie przechowywać wynik operacji modulo a przez 3
  • f (double), która będzie przechowywać wynik operacji modulo b przez 1.5
  • g (double), która będzie przechowywać wynik operacji modulo b przez 3.9
  • h (int), która będzie przechowywać wynik operacji modulo c przez 10

Sprawdź wynik i zobacz, jak różne dzielne i dzielniki wpływają na rezultat.

Spróbuj swoich sił

using System;

public class Program {
    public static void Main(string[] args) {
        // Wpisz swój kod poniżej
        
        
        // Nie zmieniaj poniższej linii
        Console.WriteLine("a = " + a);
        Console.WriteLine("b = " + b);
        Console.WriteLine("c = " + c);
        Console.WriteLine("d = " + d);
        Console.WriteLine("e = " + e);
        Console.WriteLine("f = " + f);
        Console.WriteLine("g = " + g);
        Console.WriteLine("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 C# online