Opérateur ** (Exposant)
Élève un nombre à la puissance d’un autre nombre
Utilisation
base ** exposant
Paramètres
base |
(Requis) Le nombre de base à élever |
exposant |
(Requis) L’exposant auquel le nombre de base est élevé |
Exemples
Plus d'information
Plusieurs opérateurs peuvent être utilisés. L’ordre des opérations est le même qu’en mathématiques :
- le contenu des parenthèses est évalué en premier
- ensuite, les exposants sont évalués, de droite à gauche
- puis, la multiplication et la division sont évaluées, de gauche à droite
- les opérateurs restants sont ensuite appliqués de gauche à droite
Comparé à Excel
Excel utilise ^
pour l’exponentiation. DocuMold ne l’utilise pas, car le ^
d’Excel a des comportements inattendus.
Utiliser **
aide à souligner qu’il y a des différences par rapport à Excel.
Voici les comportements inattendus d’Excel :
-1 ^ 2
donne1
. Les mathématiques et la plupart des langages de programmation disent que cela devrait être-1
. Le signe moins seul est un raccourci pour-1 *
et l’exponentiation doit être faite avant la multiplication.2 ^ 2 ^ 0
donne1
. Les mathématiques et la plupart des langages de programmation disent que cela devrait être2
. Les exposants sont censés être évalués de droite (donc2 ^ (2 ^ 0)
->2 ^ 1
=>2
), mais Excel le fait de gauche (donc(2 ^ 2) ^ 0
->4 ^ 0
=>1
).
L’**
de DocuMold n’a pas ces comportements inattendus.
Rappels
Un texte contenant des chiffres n’est pas traité comme un nombre. Pour avoir un véritable nombre :
- utilisez
@NUMBER_QUESTION
pour définir la variable - écrivez une valeur numérique directement dans le code sans guillemets, ex :
âge >= 18
- utilisez une fonction qui convertit en nombre :
NUMBER(texte_contenant_des_chiffres)
- utilisez une fonction qui renvoie un nombre :
FIND("monde", "bonjour tout le monde")