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 ^ 2donne1. 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 ^ 0donne1. 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_QUESTIONpour 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")