Modulo-Operator
Teil des Abschnitts Fundamentals der Rust-Journey von Coddy — Lektion 16 von 75.
Der Modulo-Operator % gibt den Rest einer Division zurück. In Rust wird er mit einer einfachen Syntax verwendet:
let result = dividend % divisor;- dividend: Die Zahl, die geteilt wird.
- divisor: Die Zahl, durch die der Dividend geteilt wird.
- result: Der Rest der Division.
Zum Beispiel:
let result = 10 % 3;Hier wird 10 durch 3 geteilt. Die 3 passt dreimal in die 10, mit einem Rest von 1. Daher wird result 1 sein.
Normalerweise wird Modulo verwendet, um zu prüfen, ob eine Zahl gerade oder ungerade ist:
- Wenn eine Zahl gerade ist, lässt die Division durch 2 einen Rest von 0.
- Wenn eine Zahl ungerade ist, lässt die Division durch 2 einen Rest von 1.
Bei der Verwendung von Modulo mit Gleitkommazahlen (f64) funktioniert es ähnlich wie bei Ganzzahlen, behält aber die Dezimalpräzision bei. Zum Beispiel:
let result: f64 = 5.2 % 2.0;
// result ist 1.2So funktioniert es: 2.0 passt zweimal in 5.2 (4.0), und der Rest ist 1.2 (5.2 - 4.0 = 1.2).
Ein weiteres Beispiel:
let result: f64 = 7.8 % 3.5;
// result ist 0.8Aufgabe
AnfängerSchreiben Sie einen Code, der drei Variablen, a (i32), b (f64) und c (i32) mit den Werten 9, 2.6 und 11 (in dieser Reihenfolge) initialisiert.
Initialisieren Sie danach die folgenden Variablen:
d (i32), die das Ergebnis vonamodulo2enthalten wirde (i32), die das Ergebnis vonamodulo3enthalten wirdf (f64), die das Ergebnis vonbmodulo1.5enthalten wirdg (f64), die das Ergebnis vonbmodulo3.9enthalten wirdh (i32), die das Ergebnis voncmodulo10enthalten wird
Schauen Sie sich das Ergebnis an und sehen Sie, wie sich verschiedene Dividenden und Divisoren auf das Ergebnis auswirken.
Spickzettel
Der Modulo-Operator % gibt den Rest einer Division zurück:
let result = dividend % divisor;Beispiel mit Ganzzahlen:
let result = 10 % 3; // Ergebnis ist 1Häufiger Anwendungsfall - prüfen, ob eine Zahl gerade oder ungerade ist:
- Gerade Zahlen:
number % 2 == 0 - Ungerade Zahlen:
number % 2 == 1
Modulo mit Gleitkommazahlen:
let result: f64 = 5.2 % 2.0; // Ergebnis ist 1.2
let result: f64 = 7.8 % 3.5; // Ergebnis ist 0.8Probier es selbst
fn main() {
// Geben Sie Ihren Code unten ein
// Ändern Sie die folgende Zeile nicht
println!("a = {}", a);
println!("b = {}", b);
println!("c = {}", c);
println!("d = {}", d);
println!("e = {}", e);
println!("f = {}", f);
println!("g = {}", g);
println!("h = {}", h);
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Fundamentals
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Grundlagen IO
Ausgabe in die KonsoleBenutzereingaben lesenWiederholung - Bis 120Wiederholung - Wahr oder Falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung - Einfache LogikLogische Operatoren Teil 311Funktionen
Funktionen deklarierenParameter und ArgumenteRückgabewerteMehrere RückgabewerteWiederholung - Sigma-FunktionWiederholung - Validierungsfunktion14Iterieren über Arrays
Range-LeitfadenErweiterte For-SchleifeBorrowing in SchleifenGängige Array-Operationen3Variablen Teil 2
TypdeklarationNamenskonventionenTypinferenzRückblick - Variablen initialisierenTypumwandlung6Entscheidungsfindung
If-AusdrückeIf-ElseMatch-AnweisungZusammenfassung - If-ElseVerschachteltes If-Else9Schleifen
For-Schleife über SerienWhile-SchleifeBreakContinueVerschachtelte SchleifenSchleifen-LabelsEndlosschleifeRückblick – Dynamische Eingabe