Operatore modulo
Fa parte della sezione Fondamenti del percorso Rust di Coddy. Lezione 16 di 75.
L'operatore modulo % restituisce il resto di una divisione. In Rust si usa con una sintassi semplice:
let result = dividend % divisor;- dividendo: Il numero da dividere.
- divisore: Il numero che divide il dividendo.
- risultato: Il resto della divisione.
Per esempio:
let result = 10 % 3;Qui, 10 viene diviso per 3. 3 entra in 10 tre volte, con un resto di 1. Quindi, result sarà 1.
Se il dividendo è minore del divisore, il divisore entra zero volte, quindi il resto è il dividendo stesso: 2 % 9 è 2.
Di solito il modulo viene usato per verificare se un numero è pari o dispari:
- Se un numero è pari, dividendolo per 2 il resto sarà 0.
- Se un numero è dispari, dividendolo per 2 il resto sarà 1, oppure -1 se il numero è negativo.
Quando si usa il modulo con numeri in virgola mobile (f64), funziona in modo simile agli interi e il resto può avere una parte decimale. Per esempio:
let result: f64 = 5.2 % 2.0;
// result è circa 1.2Ecco come funziona: 2.0 sta due volte in 5.2 (4.0) e il resto è 1.2 (5.2 - 4.0 = 1.2). Un f64 non può memorizzare esattamente 5.2, quindi stampando result viene mostrato 1.2000000000000002.
Un altro esempio:
let result: f64 = 7.8 % 3.5;
// result è circa 0.8 (stampa 0.7999999999999998)Sfida
PrincipianteScrivi un codice che inizializzi tre variabili, a (i32), b (f64) e c (i32) con i valori 9, 2.6 e 11 (rispettivamente).
Successivamente, inizializza le seguenti variabili:
d (i32)che conterrà il risultato diamodulo2e (i32)che conterrà il risultato diamodulo3f (f64)che conterrà il risultato dibmodulo1.5g (f64)che conterrà il risultato dibmodulo3.9h (i32)che conterrà il risultato dicmodulo10
Osserva il risultato e nota come divisori e dividendi diversi influiscono sul risultato.
Provalo tu
fn main() {
// Scrivi il tuo codice qui sotto
// Non modificare la riga qui sotto
println!("a = {}", a);
println!("b = {}", b);
println!("c = {}", c);
println!("d = {}", d);
println!("e = {}", e);
println!("f = {}", f);
println!("g = {}", g);
println!("h = {}", h);
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloAbbreviazioni aritmeticheOperatori di confrontoConfronto tra stringhe7Input/output di base
Stampare sulla consoleLeggere l'input dell'utenteRiepilogo - Fino a 120Riepilogo - Vero o falso5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Ripasso - Logica sempliceOperatori logici Parte 311Funzioni
Dichiarare le funzioniParametri e argomentiValori restituitiValori restituiti multipliRiepilogo - funzione SigmaRiepilogo - funzione di validazione14Iterare sugli array
Guida ai rangeCiclo for avanzatoPrestito nel cicloOperazioni comuni sugli array3Variabili Parte 2
Dichiarazione del tipoConvenzioni di denominazioneInferenza del tipoRipasso - Inizializzare le variabiliConversione di tipo9Cicli
Ciclo for su sequenzeCiclo whileBreakContinueCiclo annidatoEtichette dei cicliCiclo infinitoRiepilogo - Input dinamico12Fondamenti degli array
Dichiarare gli arrayArray come parametroAccedere agli elementiModificare gli arrayRiepilogo - Stampare un array in modo leggibile15Operazioni sulle stringhe
Metodi delle stringheMacro format!Conversione delle stringheRipasso - FormattazioneEsercitati da solo: Compilatore Rust online