Functions > Math >


Mod

Effectue l'opération modulo (reste d'une division).

Mod ( value1, value2 )

Paramètres

value1 Le dividende.
value2 Le diviseur.

Valeur de retour

Succès: Retourne le reste lorsque valeur1 est divisé par valeur2.
Échec: Retourne -1.#IND (indéterminé) si le diviseur est zéro.

Remarques

Cette fonction garantit la relation: Mod(dividende, diviseur) = dividende - Int ( dividende/diviseur) * diviseur.

Cette fonction ne vérifie pas si le dividende et le diviseur sont des entiers, en particulier avec des nombres à virgule flottante.

Si des entiers sont passés en paramètres, cette fonction fait une opération modulo. Sinon, l'opération revient à une opération en virgule flottante qui, par la remarque précédente, signifie qu'elle ne peut pas produire le résultat attendu.

En relation

Int

Exemple

#include <MsgBoxConstants.au3>

Example()

Func Example()
    ; Assigne une variable locale avec le nombre 18.
    Local $iNb = 18
    ; Si l'opération modulo de $iNB par 2 est égal à 0, alors $INB est pair.
    If Mod($iNb, 2) = 0 Then
        MsgBox($MB_SYSTEMMODAL, "", $iNb & " est un nombre pair.")
    Else
        MsgBox($MB_SYSTEMMODAL, "", $iNb & " est un nombre impair.")
    EndIf

    ; Assigne une variable locale avec l'opération  modulo de 4 par 7.
    Local $iMod1 = Mod(4, 7) ; 4%7 = 4 car le diviseur > dividende
    ; Affiche le résultat: 4
    MsgBox($MB_SYSTEMMODAL, "", $iMod1)

    ; Assigne une variable locale avec l'opération modulo de 1 par 3/4.
    Local $iMod2 = Mod(1, 3 / 4) ;1 % (3/4) = 0,25, car le diviseur est un float
    ; Affiche le résultat: dividende - diviseur * int(1 / 0,75) = 1 - 0,75 * 1 = 0,25
    MsgBox($MB_SYSTEMMODAL, "", $iMod2)
EndFunc   ;==>Example