Nwlapcug.com


Funzione MOD in MATLAB

A volte durante un calcolo di divisione, il resto è di maggiore interesse che il quoziente intero. Ad esempio, quando si divide 17 da tre, il resto di due potrebbe essere più importante sapere che il quoziente intero di cinque. Uno delle migliaia di funzioni incorporate nel programma software matematico MATLAB è il comando "mod", abbreviazione di "modulo". La funzione "mod" calcola direttamente il resto di una divisione.

Esempio di mod

Supponiamo che John ha 17 mele e vuole dividerli più uniformemente possibile tra lui e i due amici in modo che tutti hanno un numero uguale di mele. Quante mele rimarrà? Risolvere il problema con questa riga di codice MATLAB:

Mod(17,3)

MATLAB legge il codice, divide 17 da tre e dice a John che ci saranno due mele sinistra sopra.

Mod Versus Rem

Una funzione strettamente correlata al "mod" è funzione di MATLAB "rem", abbreviazione di "resto". Un trabocchetto possibile per l'utilizzo non corretto della funzione "mod" è che la risposta mantiene sempre il segno del divisore. Per esempio

Mod(-17,3)

restituisce due positivi, perché i tre è positivo. Se un calcolo di divisione richiede il segno corretto alla risposta, quindi utilizzare la funzione"rem" come questo:

REM(-17,3)

In questo caso, MATLAB restituirà un due negativo.

Alcune regole Mod

Ci sono una manciata di regole un utente MATLAB dovrebbe sapere quando si utilizza la funzione "mod", la maggior parte dei quali seguono dalle regole di base della divisione:

In primo luogo, "mod(X,0)" restituisce "X," piuttosto che di errore.
In secondo luogo, "mod(X,X)" restituisce "0".
In terzo luogo, "mod(X,Y)" avrà lo stesso segno di "Y", purché "X" e "Y" non sono uguali e "Y" non è zero.
Infine, "mod(X,Y)" e "rem(X,Y)" sono la stessa cosa se "X" e "Y" condividono lo stesso firmare, ma differiscono da "Y" in caso contrario.

Uso per congruenza

In aritmetica modulare, due numeri sono "congruenti mod n" Se quando diviso per "n", che hanno lo stesso resto. Un altro modo di dire che è dopo aggiungendo o sottraendo multipli di "n" al uno numero, si può finire a altra. Ad esempio, 6 e 18 sono "congruenti mod 12," perché l'aggiunta di risultati di 12 a uno in altro. Conversione 18 1800 nel tempo militare, il codice seguente restituisce "true" e dimostra la loro congruenza utilizzando il comando "mod" di MATLAB:

Mod(6,12)==mod(18,12)