Astuces de recherche...
Home
- Accueil & nouveautés
- Les newsgroups VB
- Téléchargements
- L'équipe
- Nous contacter
- Liens
Rubriques
- Toutes les questions
- Affichage & graphismes
- Algorithmique
- API
- Base de registre
- Bases de données
- Contrôles
- Date & heure
- Déploiement
- Divers
- Erreurs & problèmes
- Fichiers & dossiers
- Généralités
- Impression
- Internet & mails
- Math
- Multimédia
- Réseaux
- Structures de données
- Texte & strings
- VB .Net
- VB Script
- VBA
- Windows

Question 196

Quelle est la difference entre le modulo et le reste d'une division ?

L'opération modulo, si elle est bien définie pour les nombres positifs, possède plusieurs définitions lorsque dividende ou diviseur sont négatifs. Par convention, selon que le résultat prend le signe du diviseur ou du dividende, on appellera l'opération respectivement modulo ou reste (de la division euclidienne).

Les différences sont illustrées dans le tableau suivant :

DividendeDiviseurModuloReste
17 5 2 2
17-5 -3 2
-17 5 3 -2
-17-5 -2 -2

L'opérateur Mod de Visual Basic implémente le reste, au contraire de l'opérateur propre à certains autres langages de programmation. Le modulo peut néanmoins être implémenté de la sorte :

Public Function Modulo(Dividend As Long, Divisor As Long) As Long
    Dim Div As Currency
    Div = Dividend / Divisor
    Modulo = Dividend - Divisor * Int(Div)
End Function

Pour aller plus loin

Voir aussi :

Date de publication : 11 septembre 2008
Dernière modification : 11 septembre 2008
Rubriques : Math
Mots-clés : modulo, mod, remainder, reste, division, euclidienne, diviseur, dividende