VB.Net ACOS [Résolu]

Signaler
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
-
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
-
Salut


J'ai un bug avecle calcul d'un Cos-1 ou Arc Cos...


Je fais la ArcCos de 0,01 et j'ai comme résultat 1.5706217938
et je devrais arriver à 89.42703266


Ou provient mon bug....


txtResultat.Text = Math.Acos((Convert.ToDouble(txtCalcul.Text) * System.Math.PI) / 180)


Mercid e votre aide
A voir également:

7 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
38
oupssss c'est exact, un copier/coller trop rapide de ta formule, j'ai pas tout vérifié

txtResultat.Text = (
  Math.Acos(
Convert.ToDouble(txtCalcul.Text)) * 180)
/ System.Math.PI

ça devrait aller mieux

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
38
Et non, elle n'est pas bonne.

Au Cos tu lui passe un angle en radian que toi tu as en degré.
Ici c'est donc la valeur passée qu'il faut convertir avant.
Mais ici tu convertie de degrée vers radian, alors que tout à l'heure il fallait convertir de radian vers degré

Donc

txtResultat.Text = Math.Cos( ( Convert.ToDouble(txtCalcul.Text) *
System.Math.PI
) /
180 )

Il s'agit de l'opération inverse de tout à l'heure.

---- Sevyc64  (alias Casy) ----<hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
38
probalement du fait que tu t'es un peu mélangé les pinceaux sur ACos

Comme le dit si bien l'aide : Acos retourne l'angle dont le cosinus est le nombre spécifié.

C'est à dire que tu passe à ACos un cosinus (nombre qui par définition n'a pas de dimension) et elle te renvoie un angle .... en radian
Comme tu le veux en degré, il faut effectivement faire une convertion, mais sur le résultat, pas sur le cosinus comme tu fait.

txtResultat.Text = (
  Math.Acos(
Convert.ToDouble(txtCalcul.Text)) * System.Math.PI)
/ 180

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Effectivement je me suis mélangé héhéhé :P


 


merci


bye
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
Hummmmmm
Cependans, j'arrive au résultat suivant:
0.0272410319

Je m'y perd encore :(

J'attends de tes nouvelles

merci
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
ok parfait.. mais je ne saisi pas tou.. moi et les maths...

Pourquoi si je fais un COS ca fonctionnepas...

txtResultat.Text = (Math.Cos(Convert.ToDouble(txtCalcul.Text)) * 180) / System.Math.PI

J'ai comme résultat: 57.292914747
et je devrais avoir: 0.999999984

Ma conversion en Degré n'est pas bonne pour le COS ???

merci encore
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Statut
Membre
Dernière intervention
6 octobre 2012
1
merci mille fois..

bye