VB6 Calcul mathématique avec une variabl en Variant ? [Résolu]

Signaler
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
-
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
-
Bonjour

Je désire faire un calcul simple de Pythagore
Je crois que mon problème est que je dois faire le calcul avec une variable qui est en variant. Je m'explique.

Mon tableau pt(X) est en Double et
BasePnt(X) est en variant.
pt(3) = 308414.8421
pt(4) = 5101647.0850
BasePnt(0) = 308414.8357
BasePnt(1) = 5101647.1000


Je suis obligé que mon tableau BasePnt soit en variant.

Dim Distance_Polaire As Double
Dim X As Double, Y As Double
    
X = (pt(3) - CDbl(BasePnt(0))) ^ 2
Y = (pt(4) - CDbl(BasePnt(1))) ^ 2
    
Distance_Polaire = Sqr(X + Y)


Le problème est que Distance_Polaire arrive comme résultat à 1.6280......E-2

Je devrait arriver à 0.016

Merci de votre aide

4 réponses

Messages postés
63
Date d'inscription
dimanche 5 novembre 2000
Statut
Membre
Dernière intervention
1 décembre 2013

C'est un peu du bricolage mais si ta variable est en variant il me semble qu'elle ne peut avoir que 16 chiffres de precision avent qu'automatiquement elle rajoute le E-2, donc si tu arrondis ta variable a 15 chiffres tu devrais avoir le resultat que tu veux.
La foction c'est : Round(Distance_Polaire, 15)
Messages postés
63
Date d'inscription
dimanche 5 novembre 2000
Statut
Membre
Dernière intervention
1 décembre 2013

1.6280E-2 signifie 1.6280 * 10 ^ -2 soit 1.628 * 0.01 soit 0.01628
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
3
est-il possible de ne pas avoir un résultat en exposant ?

Effectivement je peux le * par 10 mais puis-je arriver èa 0.01628 ? Est ce que la variable Variant engendre l'exposant ?

merci
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
3
merci bcp