Calcolatore Modulo
L’operazione modulo (o “mod”) restituisce il resto dopo la divisione intera: 17 mod 5 = 2 perché 17 = 3·5 + 2. È il cuore dell’aritmetica oraria, della crittografia, delle funzioni hash e del modello “ogni N-esima riga” in SQL. Questo calcolatore accetta operandi interi o decimali, mostra esplicitamente il quoziente e il resto, e gestisce le differenze di convenzione del segno tra i linguaggi (il % di Python ≠ il % di C per i negativi).
Come calcolare a mod b
-
1
Inserisci dividendo (a) e divisore (b)
Qualsiasi numero; decimali e negativi OK.
-
2
Scegli la convenzione del segno
Divisione troncata (C, Java, Go), divisione arrotondata (Python, Ruby, convenzione matematica).
-
3
Leggi quoziente e resto
a = q·b + r, con la regola scelta per il segno di r.
-
4
Guarda l'espressione matematica
I valori sostituiti rendono visibile ogni passaggio.
Due convenzioni per i numeri negativi
Per operandi positivi, tutte le convenzioni concordano: 17 mod 5 = 2. Per i negativi, i linguaggi differiscono:
| Linguaggio | -17 mod 5 |
Convenzione |
|---|---|---|
| Python, Ruby | 3 | Arrotondata |
| C, Java, Go, JS | -2 | Troncata |
| Libri di matematica | 3 | Arrotondata (di solito) |
Divisione arrotondata: il quoziente si arrotonda verso −∞. Il resto ha sempre il segno del divisore: stesso segno di b.
Divisione troncata: il quoziente si arrotonda verso zero. Il resto ha il segno del dividendo: stesso segno di a.
Per a = -17, b = 5:
- Troncata: q = -3 (arrotondato verso 0), r = -17 − (-3)·5 = -2.
- Arrotondata: q = -4 (arrotondato verso -∞), r = -17 − (-4)·5 = 3.
Entrambi sono corretti data la convenzione. Scegli in base al tuo linguaggio.
Dove appare il modulo
- Tempo. Minuti in un’ora, giorni della settimana, secondi in un giorno, tutta aritmetica mod.
- Tabelle hash.
hash(key) mod table_sizesceglie un bucket. - Pianificazione round-robin.
task_i mod worker_countassegna lavoro. - Crittografia. RSA e Diffie-Hellman si basano su mod
ncon grandi numeri primi. - Ogni N-esima riga. In SQL:
WHERE id % 3 = 0. - Controllo pari/dispari.
n mod 2 == 0significa pari. - Modelli alternati. Strisce di righe, colorando ogni altro elemento.
- Buffer circolari.
(index + 1) mod sizesi avvolge.
Identità utili
(a + b) mod n = ((a mod n) + (b mod n)) mod n(a · b) mod n = ((a mod n) · (b mod n)) mod n(a^k) mod npuò essere calcolato tramite esponenziazione modulare veloce in O(log k), critico per la crittografia con numeri grandi.a mod 1 = 0per qualsiasi intero a.a mod a = 0.
Modulo decimale
Per numeri reali, la definizione naturale è a mod b = a − b · floor(a/b). 7.5 mod 2.5 = 0 perché 7.5 è un multiplo esatto. 7.6 mod 2.5 = 0.1.
L’operatore % di JavaScript funziona su numeri reali; fmod di Python fa mod reale troncato; % di Python fa mod reale arrotondato.
Esempi risolti
100 mod 7: 100 = 14·7 + 2, quindi resto 2.25 mod 4: 25 = 6·4 + 1, quindi resto 1.-10 mod 3(arrotondato):-10 = -4·3 + 2, resto 2. (Troncato darebbe-1.)17.5 mod 5: 17.5 = 3·5 + 2.5, resto 2.5.
Domande frequenti
Nella maggior parte dei casi sono sinonimi. Formalmente, “modulo” implica spesso la convenzione matematica (arrotondata), mentre “resto” si riferisce spesso alla variante troncata (stile C). I nomi si riflettono nella documentazione dei linguaggi; quando è importante, specifica la convenzione.
Python segue la convenzione matematica (arrotondata), che mantiene il segno del resto corrispondente al divisore. C segue la convenzione dell’ALU hardware (troncata), dove il segno del resto corrisponde al dividendo. Nessuna delle due è sbagliata; sono scelte diverse.
No, la divisione per zero è indefinita. Il calcolatore restituisce un errore per b = 0.
Di solito, sì. Controlla la specifica del tuo linguaggio per la gestione dei numeri negativi, Python e Ruby differiscono da C, Java, Go e JavaScript.
Per la matematica in stile RSA con numeri a 2048 bit, usa una libreria dedicata (il pow(a, b, n) di Python, il BigInteger.modPow di Java). Questo calcolatore gestisce valori quotidiani, non quelli di grado crittografico.
Strumenti correlati
Calcolatore di numerologia
Calcola i numeri numerologici basati sul nome con valori pitagorici o caldei: espressione, impulso dell’anima e personalità.
Calcolatore di impedenza degli altoparlanti
Calcola il carico nominale di altoparlanti passivi identici collegati in serie, parallelo o serie-parallelo bilanciato e confrontalo con il minimo dell’amplificatore.
Calcolatore di blocchi di cemento
Calcola quanti blocchi di cemento (CMU) e sacchi di malta ti servono per un muro. Inserisci le dimensioni del muro, la misura del blocco e un margine di sfrido per ottenere subito il computo dei materiali.
Calcolatore dell’orario di uscita
Calcola l’orario di uscita a partire dall’orario di entrata, dalle ore retribuite da completare e dalle pause non retribuite. Gestisce i turni che superano la mezzanotte e mostra l’ora nei formati 24 e 12 ore.
Calcolatore misure tende
Calcola larghezza, arricciatura, numero di teli e caduta della tenda dalle misure di finestra, bastone o binario installato.
Calcolatore delle dimensioni dei canali aria
Stima le dimensioni di un canale circolare o rettangolare dalla portata e dalla velocità obiettivo, oppure verifica la velocità dell’aria in un canale esistente.
Strumento disponibile in altre lingue
- 모듈로 계산기 [KO]
- Calculateur de Modulo [FR]
- Calculadora de Módulo [PT]
- Máy tính modulo [VI]
- 剰余計算機 [JA]
- Modulo-calculator [NL]
- حاسبة باقي القسمة (Modulo) [AR]
- Modulo-Rechner [DE]
- Kalkulator Modulo [ID]
- เครื่องคำนวณโมดูโล (Modulo) [TH]
- Calculadora de Módulo [ES]
- Modulokalkylator [SV]
- Kalkulator modulo [PL]
- Modulo Calculator [EN]
- Калькулятор остатка от деления [RU]
- Modulo Hesaplayıcı [TR]
- 取模计算器 [ZH]