Le Modulo en VB6 [Résolu]

Messages postés
5
Date d'inscription
jeudi 31 mars 2005
Dernière intervention
13 septembre 2006
- 13 sept. 2006 à 11:17 - Dernière réponse :
Messages postés
4066
Date d'inscription
mardi 13 mai 2003
Dernière intervention
23 décembre 2008
- 13 sept. 2006 à 11:27
    Bonjour tout le monde.
j veux calculer R1= t1 Mod 97 avec t1=2558100035900 ( le type de t1 est double)
mais un msg d'erreur s'affiche : dépassement de capacité.
R1 soit de type long ou double mais toujours le même problème.
Cordialement.
Ahmed.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
13 sept. 2006 à 11:25
3
Merci
le modulo, c'est "le reste de la division entière."

tu peux donc le remplacer par :

R1 = t1 - fix(t1 / 97) * 97

Renfield
Admin CodeS-SourceS- MVP Visual Basic

Merci Renfield 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de Renfield
Meilleure réponse
Messages postés
4066
Date d'inscription
mardi 13 mai 2003
Dernière intervention
23 décembre 2008
13 sept. 2006 à 11:27
3
Merci
Salut,

Le problème a déjà été rencontré sur VBFRance. Voici la réponse qui a été apportée ce jour-là par us_30 :





L'utilisation de la fonction MOD ne fonctionne que dans la plage des
nombres en LONG. C'est à dire que tu peux l'utiliser avec des DOUBLE à
la condition de ne pas dépasser la limite 2147483647 (limite du type
LONG) alors que le type DOUBLE va au-delà.

Par conséquent, il
faut réécrire la fonction MOD, avec des instructions compatibles avec
le type DOUBLE, pour toute sa plage. Cette fonction peut être
programmée comme suit :

=

Function MOD2(ByVal D As Double, ByVal N As Double) As Double
'Renvoi le modulo de D et N pour des nombres jusqu'à Double
'contrairement à MOD d'Excel ou de VBA

'Converti en entierD Int(D): N Int(N)
'Calcul du reste
MOD2 = D - N * Int(D / N)

End Function



=

Manu
--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.

Merci econs 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de econs

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.