[R] Effectuer un calcul

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

[R] Effectuer un calcul

#1

Message par Wardow »

Bonjour, je cherche a effectuer un calcul, j'ai trouver la fonction Number dans l'aide d'AutoIt
j'ai donc essayer

Code : Tout sélectionner

$a = InputBox("test","entrez votre calcul")
$b = Number($a)
MsgBox (0,"test",$b)
Mais il n'y a que le premier nombre du calcul.

Vous alez peut etre me dire regarde l'aide, je l'ai regarder et je pence que le probleme vien des " de la variable $a, comment les enlever ?
► Afficher le texteAide AutoIt
Modifié en dernier par Wardow le dim. 18 mars 2012 18:40, modifié 1 fois.
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Effectuer un calcul

#2

Message par jchd »

Il suffit de lire l'aide portant sur les types de variables et Number() pour comprendre ce qu'il advient de "24/7".
Execute() est aussi une source d'inspiration.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [..] Effectuer un calcul

#3

Message par Wardow »

Merci pour la fonction Execute par contre je ne comprend toujours pas pourquoi Number ne fonctionne pas
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Effectuer un calcul

#4

Message par jchd »

As-tu lu l'aide de Number() ?
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [..] Effectuer un calcul

#5

Message par Wardow »

Oui mais je ne comprend pas.
Avatar du membre
karime1
Niveau 5
Niveau 5
Messages : 106
Enregistré le : sam. 09 avr. 2011 10:05
Status : Hors ligne

Re: [R] Effectuer un calcul

#6

Message par karime1 »

dans l'exemple c'est écrit:
Local $w = Number(1 + 2 + 10) ;returns 13
Local $y = Number("24/7") ;returns 24
donc si tu lui donne une chaine de caractère il te donne le 1er num mais si tu lui donne une equation il te donne le resultat
et ta inputbox te donne une chaine de caractère. t'a compris la difference?
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [R] Effectuer un calcul

#7

Message par Wardow »

oui , sa j'avais compris, je cherchais un moyen d'enlever les " pour obtenir une équation.
Avatar du membre
karime1
Niveau 5
Niveau 5
Messages : 106
Enregistré le : sam. 09 avr. 2011 10:05
Status : Hors ligne

Re: [R] Effectuer un calcul

#8

Message par karime1 »

mmm... j'ai essayé de devopper une petite fonction qui pourrai faire le calcule mais ça devien rapidement difficile surtout quand il y'a les parenthèses :(
Tout ce que je peut te dire c'est que Microsoft Encarta Math fait ça: il a une interface qu'on peut qualifier de dynamique.
(en fait, le sujet est résolu?)
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Effectuer un calcul

#9

Message par jchd »

Pourquoi Execute ne te convient-il pas ?

Code : Tout sélectionner

Local $s = "24 / 7"
ConsoleWrite($s & " = " & Execute($s) & @LF)
$s = "3 * (2^3) / (3 + 4)"
ConsoleWrite($s & " = " & Execute($s) & @LF)
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [R] Effectuer un calcul

#10

Message par Wardow »

karime1 : Merci pour votre conseil, oui le sujet est résolu puisque l'on ma conseiller la fonction Execute
jchd : Cette fonction me convient parfaitement mais je me demandait juste (quand j'ai créé le sujet) comment enlever les " pour que Number fonctionne mais maintenant que je connais Execute, je n'ai plus besoin de cet information.
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Effectuer un calcul

#11

Message par jchd »

Paraphrase de l'aide : Number($s) convertit le nombre (entier ou flottant, selon l'option choisie) figurant en tête de la chaîne $s jusqu'au premier caractère incompatible avec la représentation numérique déjà convertie.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [R] Effectuer un calcul

#12

Message par Wardow »

J'ai pas tout compris la :P
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Effectuer un calcul

#13

Message par jchd »

A partir d'où tu coinces ?
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [R] Effectuer un calcul

#14

Message par Wardow »

entier ou flottant doit dire avec ou sans virgule
figurant en tête de la chaîne $s : la je ne comprend pas
incompatible avec la représentation numérique déjà convertie : la non plus
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2284
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [R] Effectuer un calcul

#15

Message par jchd »

"123abc456" --> 123 (on s'arrête à "a")
"123 456" --> 123 (on s'arrête à " ")
"-123***456" --> -123 (on s'arrête à "*")
"123.456 km/h" --> 123.456 (on s'arrête à " ")
"cinq km/h = 5 km/h" --> 0 (on s'arrête à "c")
" 5km/h" --> 0 (on s'arrête à " ")
"5km/h" --> 5 (on s'arrête à "k")
"3.141 592" --> 3.141 (on s'arrête à " ")
"3.141592" --> 3.141592 (entièrement valide)
"+ 5" --> 0 (on s'arrête à " ")
"+5" --> 5 (entièrement valide)
"+.1" --> 0.1 (entièrement valide)
"-.1" --> -0.1 (entièrement valide)
"1.234.456" --> 1.234 (on s'arrête au second "." car un seul point décimal dans un flottant)
"1,234" --> 1 (on s'arrête à "," car invalide dans un flottant)
"1+1" --> 1 (on s'arrête à "+" car pas en tête)
" 1+1" --> 0 (on s'arrête à " ")
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Wardow
Niveau 4
Niveau 4
Messages : 81
Enregistré le : dim. 31 juil. 2011 10:14
Status : Hors ligne

Re: [R] Effectuer un calcul

#16

Message par Wardow »

Merci de t'etre donner la peine de faire tout ses exemples, je comprend un peut mieu maintenant.
Répondre