VB6 Tangeante

Résolu
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 28 févr. 2006 à 19:47
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 - 1 mars 2006 à 01:57
Salut...

J'ai un petit problème avec la tangante d'un calcul qui devrait être simple....

Disons que mon txtVertical = 0.0111
et mon txtDistance = 34,214

La Réponse devrait être 0,0117
Mais j'arrive à la réponse 21,4537

Pourquoi Je ne voit pas où je fais l'erreur...

Dim Degre As Integer, Minute As Integer, Seconde As Integer
Dim aTan1 As Double, aTan2 As Double
Dim dbConvert As Double



aTan1 = Tan(txtVertical) * txtDistance
aTan2 = aTan1 * (180 / 3.14159265358979)


dbConvert = aTan2


Degres = Int(aTan2) 'le Int arrondie la valeur (enlève les décimaux)
dbConvert = dbConvert - Degres
dbConvert = dbConvert * 60
Minutes = Int(dbConvert) 'le Int arrondie la valeur (enlève les décimaux)
dbConvert = dbConvert - Minutes
dbConvert = dbConvert * 60
Secondes = Int(dbConvert)


txtErreur.Text = Degres & "°" & Minutes & "'" & Secondes & "''"

End Sub

Merci d'avance

5 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
28 févr. 2006 à 20:56
je cherche .... et trouve !



1ère erreur convertir en Dégrés

0.0111 --> 0 Degrés 01 Minutes 11 secondes

soit:

1/60 + 11/3600 = 0.019722222 Degrés



2ème erreur convertir en Radians

0.019722222 * pi/180 = 0.0003442177136 radians



la tangente d'un petit angle c'est l'angle

Tan(0.0003442177136) = 0.003442177271



0.003442177271 * 34.214 = 0.011777065



cqfd


Daniel
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
28 févr. 2006 à 20:13
Salut
Tes dimensionnements ne correspondent pas aux variables que tu utilises (Degres, Minutes, Secondes)
Pour éviter ce genre d'erreur, ajoute "Option Explicit" en haut de chaque page de code + regarde dans les options pour l'insérer automatiquement à chaque création de code

Chez moi, le résulat donne bien 21° 45' 37''

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
28 févr. 2006 à 20:55
Rebonjour...

Ok on arrive au même résultat... Qui est pas le bon Résultat...
aTan1 Tan(txtVertical) * txtDistance ' 0,37979099... aTan2 aTan1 * (180 / 3.14159265358979) ' 21,760421...

Si je fais sur ma calculatrice (pas en RADIANS mais en Degré Minute Seconde)
Tan de 0 Degré 01 Minute 11 Seconde = 0.000344217* 34,214
Je devrais arrivé comme réponse finale à = 0,011777065

Pourquoi j'arrive à 21,4537 (DMS) ???????????

J'attends ton aide

merci d'avance

P.S. Merci pour avoir vu mon erreur (l'oubli de mes "s")
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
28 févr. 2006 à 22:07
tu as corrigé parce que j'ai oubliè un zéro

faute de conversion scientifique, mais le calcul était bon



Tan(0.0003442177136) = 0.0003442177271



0.0003442177271 * 34.214 = 0.011777065


Daniel
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
1 mars 2006 à 01:57
GObillot ... aka "The Trigonometric Man" !!!

Christophe R
0
Rejoignez-nous