Calculs arithmétiques dans les scripts
Langage de script Automation Engine propose des fonctions permettant de calculer des valeurs dans vos scripts. Les fonctions arithmétiques enregistrent les valeurs dans les variables de scripts. Ces valeurs calculées vous permettent d'automatiser diverses étapes de vos processus. Pour connaître les fonctions de script disponibles pour ces calculs, voir Fonctions de script pour les calculs.
Exemple
Le script suivant définit une variable en tant que différence entre deux valeurs.
:SET &DIFFERENCE# = SUB(100,50)
Remarque : C'est l'ordre habituel des opérations qui s'applique : la multiplication et la division ont priorité sur l'addition et la soustraction
Avertissements :
- N'utilisez pas de fonctions de script arithmétiques dans des expressions arithmétiques.
- Le résultat de l'opération ne doit pas dépasser la valeur 9 999 999 999 999 999.
Type de données dans les calculs arithmétiques
N'oubliez pas que les types de données déclarés des variables appliquent des restrictions sur les valeurs de vos calculs arithmétiques :
- Vous ne pouvez pas utiliser des variables déclarées en tant que chaînes de caractères dans des opérations arithmétiques.
- Les nombres négatifs sont pris en charge si la variable est déclarée en tant que type de données autorisant les nombres négatifs. Si le type de données ne prend pas en charge les signes d'algèbre, un résultat négatif provoquera une erreur d'exécution.
- Les décimales sont prises en charge si la variable est déclarée en tant que type de données autorisant les décimales. Si le type de données de la variable cible ne prend pas en charge les décimales, les décimales des résultats sont tronquées.
Pour plus d'informations : Types de données des variable de script
Conseil : Utilisez le type de données le plus élevé dans l'opération en tant que type de données de la variable cible.
Types de données des opérandes | Types de données autorisés de la variable cible |
---|---|
unsigned, unsigned | unsigned, signed, float |
unsigned, signed | signed, float |
unsigned, float | float |
signed, signed | signed, float |
signed, float | float |
float, float | float |
Exemple
Le type de données de la variable résultat &SUM# doit être "signed" ou "float" :
:DEFINE &UNSIGNED#,unsigned
:DEFINE &SIGNED#,signed
:DEFINE &SUM#,signed
:SET &UNSIGNED# = 12
:SET &SIGNED# = -5
:SET &SUM# = ADD(&SIGNED#,&UNSIGNED#)
Cette ligne résulterait en une erreur de script :
:SET &UNSIGNED# = ADD(&SIGNED#,&UNSIGNED#)
Résolution d'expressions arithmétiques
Vous pouvez également résoudre des expressions arithmétiques à l'aide de l'instruction de script :SET et enregistrer le résultat dans une variable. Ceci réduit et simplifie significativement la longueur du script significativement.
Les expressions arithmétiques vous permettent d'utiliser les quatre opérations arithmétiques de base, les parenthèses et les signes :
- Addition
- Soustraction
- Multiplication
- Division
- Parenthèses
- Signes
Les lignes contenant des opérateurs arithmétiques (+,-,*,/) sont traitées comme des expressions. N'utilisez pas d'apostrophe ni de guillemets pour ces expressions, car le système n'interprète pas l'expression comme une chaîne de caractères.
Exemples
:DEFINE &UNSIGNED#,unsigned
:DEFINE &FLOAT#,float
:DEFINE &RES#,float
:SET &UNSIGNED# = 12
:SET &FLOAT# = -0.50
:SET &RES# = &FLOAT#*3 + (-&UNSIGNED#) - 3
Voir aussi :
voiraussi