Opérateur modulo
Fait partie de la section Fondamentaux du Journey Rust de Coddy. Leçon 16 sur 75.
L’opérateur modulo % donne le reste d’une division. En Rust, il s’utilise avec une syntaxe simple :
let result = dividend % divisor;- dividende : Le nombre qui est divisé.
- diviseur : Le nombre qui divise le dividende.
- reste : Le reste de la division.
Par exemple :
let result = 10 % 3;Ici, 10 est divisé par 3. 3 entre trois fois dans 10, avec un reste de 1. Donc, result sera égal à 1.
Si le dividende est plus petit que le diviseur, le diviseur entre zéro fois, donc le reste est le dividende lui-même : 2 % 9 vaut 2.
En général, le modulo sert à vérifier si un nombre est pair ou impair :
- Si un nombre est pair, le diviser par 2 donne un reste de 0.
- Si un nombre est impair, le diviser par 2 donne un reste de 1, ou de -1 si le nombre est négatif.
Lorsqu’on utilise le modulo avec des nombres à virgule flottante (f64), il fonctionne de manière similaire aux entiers, et le reste peut comporter une partie décimale. Par exemple :
let result: f64 = 5.2 % 2.0;
// result vaut environ 1.2Voici comment cela fonctionne : 2.0 entre deux fois dans 5.2 (4.0), et le reste est 1.2 (5.2 - 4.0 = 1.2). Un f64 ne peut pas stocker 5.2 exactement, donc l’affichage de result montre 1.2000000000000002.
Un autre exemple :
let result: f64 = 7.8 % 3.5;
// result vaut environ 0.8 (affiche 0.7999999999999998)Défi
DébutantÉcris un code qui initialise trois variables, a (i32), b (f64) et c (i32) avec les valeurs 9, 2.6 et 11 (respectivement).
Après cela, initialise les variables suivantes :
d (i32)qui contiendra le résultat du modulo deapar2e (i32)qui contiendra le résultat du modulo deapar3f (f64)qui contiendra le résultat du modulo debpar1.5g (f64)qui contiendra le résultat du modulo debpar3.9h (i32)qui contiendra le résultat du modulo decpar10
Observe le résultat et vois comment différents dividendes et diviseurs influent sur celui-ci.
Essayez vous-même
fn main() {
// Saisissez votre code ci-dessous
// Ne modifiez pas la ligne ci-dessous
println!("a = {}", a);
println!("b = {}", b);
println!("c = {}", c);
println!("d = {}", d);
println!("e = {}", e);
println!("f = {}", f);
println!("g = {}", g);
println!("h = {}", h);
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Entrées/Sorties de base
Afficher dans la consoleLire la saisie utilisateurRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 33Variables - Partie 2
Déclaration de typeConventions de nommageInférence de typeRécapitulatif - Initialiser des variablesConversion de type9Boucles
Boucle For sur une sérieBoucle WhileBreakContinueBoucles imbriquéesÉtiquettes de boucleBoucle infinieRécapitulatif - Entrée dynamique12Bases des tableaux
Déclaration de tableauxTableau comme paramètreAccès aux élémentsModification de tableauxRécapitulatif - Affichage formaté d'un tableau15Opérations sur les chaînes
Méthodes de chaînesMacro format!Conversion de chaînesRécapitulatif - FormatEntraînez-vous par vous-même : Compilateur Rust en ligne