VB6 Sinus ???? [Résolu]

Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
- - Dernière réponse : cs_MagDix
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
- 10 août 2006 à 17:53
Salut.....

Je fais un simple Sinus mais VB6 n'arrive pas à la même réponse que moi (à la calculatrice).

J'aimerais savoir pourquoi VB arrive à cette réponse et comment faire pour le faire arriver à la bonne réponse....

Voici mon code

Dim Resulat as Double
Dim dbVaribale as Double          =  91,1590238888
Pi = 3,1416
Dim strDistance as String             =  72,25145702

Resultat = Sin(dbVariable * 180 / Pi) * CDbl(strDistance)

Vb a comme résultat: 71,6460292322578
J'ai sur ma calculatrice comme résultat: 72,23667474

Merci  de m'éclairer un peu.....   après ca je vous lâche la paix.....   héhéhéhé
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
3
Merci
Ca y'est j'ai trouvé :

Dim Resulat         As Double
Dim dbVariable   As Double
Dim strDistance   As String  

dbVariable = 91.1590238888
Pi = 3.1415926535        
strDistance = 72.25145702

Resultat = Sin(dbVariable * Pi / 180 ) * CDbl(strDistance)
<hr size ="2" width="100%" />
Il suffisait d'inverser tes valeurs ^^

@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 98 internautes ce mois-ci

Commenter la réponse de mortalino
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Dernière intervention
6 avril 2012
0
Merci
Salut,

Peu etre que cela vien de la valeur de PI ta calculatrice a une valeur plus "precise"
@+, Julien
Pensez:
Commenter la réponse de jrivet
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
0
Merci
Allo.. c'est impossible l'imprécision se retrouverait dans les décimaux. mais là, j'ai de l'imprécision dans l'entier et dans les décimaux... :(
Commenter la réponse de cs_MagDix
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
0
Merci
Salut,

Pi n'est pas déclaré !

3,1415926535

mais ça ne change pas que le résultat est celui que tu à indiqué.

Au fait, ton code :
Dim Resulat as Double
Dim dbVaribale as Double          =  91,1590238888
Pi = 3,1416
Dim strDistance as String             =  72,25145702

Resultat = Sin(dbVariable * 180 / Pi) * CDbl(strDistance)
(en couleur les fautes)

correction :

Dim Resulat as Double
Dim dbVariable as Double
Dim Pi As Double
Dim strDistance as String  

dbVariable = 91.1590238888
Pi = 3.1415926535        
strDistance = 72.25145702

Resultat = Sin(dbVariable * 180 / Pi) * CDbl(strDistance)

@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
Commenter la réponse de mortalino
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
0
Merci
Re...

Le code que j'ai indiqué comme exemple.... est un Exemple... héhéhéhé

Pi n'est pas déclarer car il l'est plus haut dans mon code.. m'ai c'était inutile de le montrer et ma variable dbVariable est bel et bien égal à 91.1590238888

J'ai écris Dim dbVaribale as Double          =  91,1590238888

Uniquement pour que vous sachiez que la variable dbVariable vaut dans l'exemple 91,1590238888

Bref j'ai toujours le même prob....

À moins que tu me dise que toi tu arrives à la bonne réponse en utilisant mes valeurs avec VB6.. ?????

Désolé... j'aurais du mettre un commentaire...
Je commence à prendre exemple des réponse sur VBFrance.. lol,,,, je montre mes expemples en mode simplifié....

Désolé Again
Commenter la réponse de cs_MagDix
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
0
Merci
Pas de problème..

Ce qui est bizarre, c'est qu'en passant par la calculatrice windows, j'ai ce résultat :
-3.8157696853586...

Je regarde ça avec une vrai calculatrice Scientifique et te tiens au courant. (Ps, au cas où ce ne soit pas la mise en forme : le symbole décimale, dans VB, est le point)

@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
Commenter la réponse de mortalino
Messages postés
6812
Date d'inscription
vendredi 16 décembre 2005
Dernière intervention
21 décembre 2011
0
Merci
C'est la fonction Sinus de VB qui merdouille !

Avec ma calculatrice :
Sin(dbVariable * 180 / Pi) => -0.0528122950456691

Avec VB :
Sin(dbVariable * 180 / Pi) => 0.991620463666313

Je ne sais pas pourquoi, je poursuis les recherches.

@++

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
Commenter la réponse de mortalino
Messages postés
532
Date d'inscription
lundi 5 juin 2006
Dernière intervention
6 octobre 2012
0
Merci
Merci de ton aide.....

A+
Commenter la réponse de cs_MagDix

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.