cs_tjma
Messages postés10Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention25 août 2006
-
15 mai 2005 à 09:46
neamar
Messages postés26Date d'inscriptionvendredi 9 septembre 2005StatutMembreDernière intervention12 avril 2009
-
16 mars 2008 à 12:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
neamar
Messages postés26Date d'inscriptionvendredi 9 septembre 2005StatutMembreDernière intervention12 avril 2009 16 mars 2008 à 12:53
Je cite :
"au debut je voulais faire un programme qui pouvait analyser une expression mathematique comme 4.5-96*(45/2) mais cetait trop complique" => Non, ce n'est pas si dur !
Il suffit d'utiliser la récursivité...j'ai posté un programme qui gère ce problème (et sans utiliser d'OCX ou de ruse sioux genre "je renvoie à la calc windows" (qui par ailleurs, ne gère pas les priorités comme le fait remarquer TJMA))
xereshsp
Messages postés8Date d'inscriptionvendredi 22 août 2003StatutMembreDernière intervention29 décembre 2005 29 déc. 2005 à 15:47
J'ai mieux...beaucoup mieux..pourquoi vous n'utilisez pas le Microsoft script control 1.0...il fait tout, gere les parenthese et tout le reste..en fait il fait tout ce que vous faite quand vous programmez..il execute meme des lignes de commande. il suffit juste de le rajouter dans votre projet :c'est un contrôle ocx et il est livré avec VB6 donc vous l'avez déjà..
laverdanny
Messages postés33Date d'inscriptionsamedi 16 octobre 2004StatutMembreDernière intervention 3 août 2007 30 mai 2005 à 16:13
A propos des SendKeys...
Il est à priori possible grâce aux API de Windows de :
-Obtenir le Handle de la fenêtre "Calculatrice"
-Envoyer les touches par des PostMessage
A creuser....
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 17 mai 2005 à 20:18
tu aurais du utiliser la powertoy calcultrice lol tu aurais eu beaucoup plus de possibilité
masi bon travail pour voir comment controler un programme
hhhp2004
Messages postés173Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention13 octobre 2007 15 mai 2005 à 21:04
oui cest vrai, je navais pas pensee a ca : il faut que la calcul soit en mode scientifique pour que tout marche correctement !
merci TJMA
cs_tjma
Messages postés10Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention25 août 2006 15 mai 2005 à 18:13
HHHP2004,
En fait ma calculatrice windows était configurée en mode standard et non en mode scientifique.
Le résultat est différent en fonction du mode choisi, ton prog n'a rien a voir avec le résultat.
Toutes mes excuses.
hhhp2004
Messages postés173Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention13 octobre 2007 15 mai 2005 à 16:31
TJMA, je ne sais pas comment tas fait pour trouver 4.5-96*(45/2)=-2058.75, MAIS
jai fait copier/coller (jai pris le 4.5-96*(45/2) et je lai colle dans le prog) et ca donne -2155,5 !!! la calcul fait JAMAIS derreurs !
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 15 mai 2005 à 12:31
Bah, alors ! 10/10, ça c'est un sacré encouragement pour une calculatrice qui ne calcul pas avec les priorités... Défaut, qui sera vite corrigé, je pense...
Bon, bon... sinon pour ta remarque sur SendKeys, personnellement je ne connais pas d'autre moyen que de faire prendre le focus à l'application concernée. Peut-être une solution, autant pour les règles de priorités que du clignotant du focus, c'est d'attendre la fin de saisi de l'expression, pour ensuite, analyser l'expression, mettre les priorité, puis d'envoyer le tout en une seul fois... Enfin, j'avoue que j'ai pas regardé en détail ton programme, c'est donc juste une réflexion...
Amicalement,
Us.
cs_tjma
Messages postés10Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention25 août 2006 15 mai 2005 à 09:46
C'est une bonne idée cette calculatrice sauf,
que le résultat n'est pas bon !
4.5-96*(45/2) = -2115.5 alors que ta calculatrice trouve -2058,75
En fait ta machine fait (4.5-96) * (45/2) d'ou erreur de priorité entre * / et + -
Salut
16 mars 2008 à 12:53
"au debut je voulais faire un programme qui pouvait analyser une expression mathematique comme 4.5-96*(45/2) mais cetait trop complique" => Non, ce n'est pas si dur !
Il suffit d'utiliser la récursivité...j'ai posté un programme qui gère ce problème (et sans utiliser d'OCX ou de ruse sioux genre "je renvoie à la calc windows" (qui par ailleurs, ne gère pas les priorités comme le fait remarquer TJMA))
http://www.vbfrance.com/code.aspx?ID=46070
29 déc. 2005 à 15:47
30 mai 2005 à 16:13
Il est à priori possible grâce aux API de Windows de :
-Obtenir le Handle de la fenêtre "Calculatrice"
-Envoyer les touches par des PostMessage
A creuser....
17 mai 2005 à 20:18
masi bon travail pour voir comment controler un programme
15 mai 2005 à 21:04
merci TJMA
15 mai 2005 à 18:13
En fait ma calculatrice windows était configurée en mode standard et non en mode scientifique.
Le résultat est différent en fonction du mode choisi, ton prog n'a rien a voir avec le résultat.
Toutes mes excuses.
15 mai 2005 à 16:31
jai fait copier/coller (jai pris le 4.5-96*(45/2) et je lai colle dans le prog) et ca donne -2155,5 !!! la calcul fait JAMAIS derreurs !
15 mai 2005 à 12:31
Bon, bon... sinon pour ta remarque sur SendKeys, personnellement je ne connais pas d'autre moyen que de faire prendre le focus à l'application concernée. Peut-être une solution, autant pour les règles de priorités que du clignotant du focus, c'est d'attendre la fin de saisi de l'expression, pour ensuite, analyser l'expression, mettre les priorité, puis d'envoyer le tout en une seul fois... Enfin, j'avoue que j'ai pas regardé en détail ton programme, c'est donc juste une réflexion...
Amicalement,
Us.
15 mai 2005 à 09:46
que le résultat n'est pas bon !
4.5-96*(45/2) = -2115.5 alors que ta calculatrice trouve -2058,75
En fait ta machine fait (4.5-96) * (45/2) d'ou erreur de priorité entre * / et + -
Salut