Fonctions d’exécution mathématiques X++

Note

Les groupes d’intérêts communautaires sont maintenant passés de Yammer à Microsoft Viva Engage. Pour participer à une communauté Viva Engage et participer aux dernières discussions, renseignez le formulaire Demander l’accès à la communauté Finance et Operations Viva Engage , puis choisissez la communauté que vous souhaitez rejoindre.

Cet article décrit les fonctions d’exécution mathématiques.

Ces fonctions effectuent des calculs mathématiques.

abs

Récupère la valeur absolue d’un nombre réel. Exemples :

  • abs(-100.0) retourne la valeur 100.0.
  • abs(30.56) retourne la valeur 30.56.

Syntaxe

real abs(real arg)

Paramètres

Paramètre Description
Arg Nombre dont obtenir la valeur absolue.

Valeur renvoyée

Valeur absolue d’arg.

Example

static void absExample(Args _args)
{
    real r1;
    real r2;
    ;
    r1 = abs(-3.14);
    r2 = abs(3.14);
    if (r1 == r2)
    {
        print "abs of values are the same";
        pause;
    }
}

acos

Récupère le cosinus d’arc d’un nombre réel.

Note

Si vous fournissez des valeurs d’argument en dehors de la -1 à 1 plage, la fonction retourne l’erreur d’exécution suivante : « Argument de la fonction trigonométrique hors plage ».

Syntaxe

real acos(real arg)

Paramètres

Paramètre Description
Arg Nombre à récupérer le cosinus de l’arc.

Valeur renvoyée

Cosinus d’arc d’arg.

Example

static void acosExample(Args _args)
{
    real r;
    str  s;
    ;
    r = acos(0.0);
    s = strFmt("The arc cosine of 0.0 is %1 ", r);
    print s;
    pause;
}

asin

Récupère l’arcsiné d’un nombre réel.

Note

Si vous fournissez des valeurs d’argument en dehors de la -1 à 1 plage, la fonction retourne l’erreur d’exécution suivante : « Argument de la fonction trigonométrique hors plage ».

Syntaxe

real asin(real arg)

Paramètres

Paramètre Description
Arg Nombre pour lequel calculer l’arcsin.

Valeur renvoyée

Arcsin du nombre spécifié.

Remarques

aSin(0.36) retourne 0,37.

atan

Récupère l’arctangente d’un nombre réel.

Syntaxe

real atan(real arg)

Paramètres

Paramètre Description
Arg Nombre pour lequel calculer la tangente d’arc.

Valeur renvoyée

Tangente d’arc du nombre spécifié.

Remarques

aTan(0.36) retourne 0,35.

Example

static void atanExample(Args _args)
{
    real r;
    ;
    r = atan(1.0);
    print strFmt("The Arc Tangent of 1.0 is %1", r);
    pause;
}

corrFlagGet

Récupère l’état de l’indicateur de correction pour un nombre réel.

Syntaxe

int corrFlagGet(real arg)

Paramètres

Paramètre Description
Arg Indicateur pour lequel récupérer l’état.

Valeur renvoyée

Valeur différente de zéro si l’indicateur est défini ; 0 (zéro) si l’indicateur est effacé.

Example

L’exemple suivant affiche 1.

static void corrFlagGetExample(Args _args)
{
    real rr;
    rr = corrFlagSet(0.36,2);
    print(corrFlagGet(rr));
}

corrFlagSet

Contrôle l’indicateur de correction d’un nombre réel.

Syntaxe

real corrFlagSet(real real, int arg)

Paramètres

Paramètre Description
real Nombre dans lequel activer ou désactiver l’indicateur de correction.
Arg 0 pour désactiver l’indicateur ; valeur différente de zéro pour activer l’indicateur.

Valeur renvoyée

0 si l’indicateur est maintenant désactivé ; valeur différente de zéro si l’indicateur est maintenant activé.

cos

Récupère le cosinus d’un nombre réel.

Syntaxe

real cos(real arg)

Paramètres

Paramètre Description
Arg Nombre pour lequel trouver le cosinus.

Valeur renvoyée

Cosinus du nombre spécifié.

Remarques

Entrez la valeur du paramètre arg dans radians.

Example

L’exemple de code suivant affiche la version 0.76.

static void cosExample(Args _arg)
{
    real r;
    ;
    r = cos(15);
    print strFmt("Cos of 15 is %1", r);
    pause;
}

cosh

Récupère le cosinus hyperbolique d’un nombre réel.

Note

Si vous entrez des valeurs d’argument extérieures à la plage -250 à 250, vous obtenez l’erreur d’exécution suivante : « Argument de la fonction trigonométrique hors plage ».

Syntaxe

real cosh(real arg)

Paramètres

Paramètre Description
Arg Nombre hyperbolique pour lequel calculer le cosinus.

Valeur renvoyée

Cosinus hyperbolique du nombre spécifié.

Remarques

Entrez la valeur du paramètre arg dans radians.

Example

static void coshExample(Args _arg)
{
    real r;
    ;
    r = cosh(0.1);
    print "The hyperbolic cosine of 0.1 is " + num2Str(r, 2, 2, 1, 1);
    pause;
}

decRound

Arrondit un nombre au nombre spécifié de décimales.

Syntaxe

real decRound(real figure, int decimals)

Paramètres

Paramètre Description
figure Le nombre à arrondir.
Décimales Nombre de décimales à arrondir.

Valeur renvoyée

Valeur du nombre spécifié, arrondie au nombre de décimales spécifié.

Remarques

La valeur du paramètre décimal peut être positive, 0 (zéro) ou négative.

  • decRound(1234.6574,2) retourne la valeur 1234.66.
  • decRound(1234.6574,0) retourne la valeur 1235.
  • decRound(1234.6574,-2) retourne la valeur 1200.
  • decRound(12345.6789,1) retourne la valeur 12345.70.
  • decRound(12345.6789,-1) retourne la valeur 12350.00.

exp

Récupère le antilogarithme naturel du nombre réel spécifié.

Syntaxe

real exp(real arg)

Paramètres

Paramètre Description
Arg Nombre réel pour lequel calculer l’antilogarithme naturel.

Valeur renvoyée

Antilogarithme naturel du nombre réel spécifié.

Remarques

L’antilogarithme naturel calculé est le logarithme naturel élevé à la puissance que le paramètre arg indique.

Example

static void expExample(Args _arg)
{
    real r1;
    real r2;
    ;
    r1 = exp(2.302585093);
    r2 = exp10(2.302585093);
    print strFmt("exp of 2.302585093 is %1", r1);
    print strFmt("exp10 of 230258 is %1", r2);
    pause;
}

exp10

Récupère le antilogarithme de base 10 du nombre réel spécifié.

Syntaxe

real exp10(real decimal)

Paramètres

Paramètre Description
decimal Nombre réel pour lequel calculer l’antilogarithme de base 10.

Valeur renvoyée

Antilogarithme basé sur 10 de la valeur du paramètre décimal .

Example

static void exp10Example(Args _arg)
{
    real r1;
    real r2;
    ;
    r1 = exp(2.302585093);
    r2 = exp10(2.302585093);
    print strFmt("exp of 2.302585093 is %1", r1);
    print strFmt("exp10 of 230258 is %1", r2);
    pause;
}

frac

Récupère la partie décimale d’un nombre réel.

Syntaxe

real frac(real decimal)

Paramètres

Paramètre Description
decimal Nombre réel pour lequel récupérer la partie décimale.

Valeur renvoyée

Partie décimale du nombre spécifié.

Remarques

frac(12.345) retourne la valeur 0,345.

log10

Récupère le logarithme de base 10 d’un nombre réel.

Syntaxe

real log10(real arg)

Paramètres

Paramètre Description
Arg Nombre pour lequel calculer le logarithme.

Valeur renvoyée

Logarithme de base 10 du nombre spécifié.

Remarques

log10(200) retourne la valeur 2.30.

logN

Récupère le logarithme naturel du nombre réel spécifié.

Syntaxe

real logN(real arg)

Paramètres

Paramètre Description
Arg Nombre pour lequel calculer le logarithme naturel.

Valeur renvoyée

Logarithme naturel du nombre spécifié.

Remarques

logN(45) retourne la valeur 3.81.

max

Récupère la plus grande de deux valeurs spécifiées.

anytype max(anytype object1, anytype object2)

Paramètres

Paramètre Description
object1 Première valeur.
object2 Deuxième valeur.

Valeur renvoyée

Plus les deux valeurs que vous spécifiez à l’aide des paramètres object1 et object2 .

Remarques

  • max(12.0,12.1) retourne la valeur 12.1.
  • max(2,33) retourne la valeur 33.

min

Récupère la plus petite de deux valeurs spécifiées.

anytype min(anytype object1, anytype object2)

Paramètres

Paramètre Description
object1 Première valeur.
object2 Deuxième valeur.

Valeur renvoyée

Plus petite des deux valeurs que vous spécifiez à l’aide des paramètres object1 et object2 .

Remarques

min(2,33) retourne la valeur 2.

Example

static void minExample(Args _arg)
{
    anytype a;
    real r = 3.0;
    real s = 2.0;

    a = min(r, s);
    print num2Str(a, 1, 2, 1, 1) + " is less than the other number.";
}

puissance

Élève un nombre réel au pouvoir d’un autre nombre réel.

Syntaxe

real power(real arg, real exponent)

Paramètres

Paramètre Description
Arg Nombre à calculer la puissance de.
exposant Nombre pour augmenter le nombre que vous spécifiez à l’aide du paramètre arg vers.

Valeur renvoyée

Nombre réel qui est le nombre que vous spécifiez à l’aide du paramètre arg à la puissance du nombre que vous spécifiez à l’aide du paramètre exposant .

Remarques

  • power(5.0,2.0) retourne la valeur 25.0.
  • power(4.0,0.5) retourne la valeur 2.0.

rond

Arrondit un nombre réel au multiple le plus proche d’un autre nombre réel.

Syntaxe

real round(real _arg, real _decimals)

Paramètres

Paramètre Description
_Arg Numéro d’origine.
_Décimales Nombre dont la valeur du paramètre _arg doit être arrondie à plusieurs.

Valeur renvoyée

Nombre qui est un multiple de la valeur spécifiée par le paramètre _decimals et est le plus proche de la valeur spécifiée par le paramètre _arg .

Remarques

Pour arrondir un nombre réel à un nombre spécifié de décimales, utilisez la fonction de décimale.

Remarques

  • round(123.45,5.00) retourne la valeur 125.00.
  • round(7.45,1.05) retourne la valeur 7.35.
  • round(23.9,5.0) retourne la valeur 25.00.
  • round(26.1,5.0) retourne la valeur 25.00.

sin

Récupère le sinus d’un nombre réel.

Syntaxe

real sin(real _arg)

Paramètres

Paramètre Description
_Arg Nombre pour lequel calculer le sinus.

Valeur renvoyée

Sinus du nombre réel spécifié.

Remarques

La valeur du paramètre _arg doit être en radians.

Example

static void sinExample(Args _arg)
{
    real angleDegrees = 15.0;
    real angleRadians;
    real pi = 3.14;
    real r;
    ;
    angleRadians = pi * angleDegrees / 180;
    r = sin(angleRadians);
    print "sin of a "
        + num2Str(angleDegrees, 2, 2, 1, 1)
        + " degree angle is "
        + num2Str(r, 2, 10, 1, 1);
    pause;
}

sinh

Récupère le sinus hyperbolique d’un nombre réel.

Syntaxe

real sinh(real _arg)

Paramètres

Paramètre Description
_Arg Nombre pour lequel calculer le sinus hyperbolique.

Valeur renvoyée

Sinus hyperbolique du nombre réel spécifié.

Remarques

Les valeurs du paramètre _arg qui se trouvent en dehors de la plage -250 à 250 provoquent l’erreur d’exécution suivante : « Argument de la fonction trigonométrique hors plage ».

Example

L’exemple suivant illustre la fonction sinh .

static void sinhExample(Args _arg)
{
    real angleDegrees = 45.0;
    real angleRadians;
    real pi = 3.14;
    real r;
    ;
    angleRadians = pi * angleDegrees / 180;
    r = sinh(angleRadians);
    print "sinh of a "
    + num2Str(angleDegrees, 2, 2, 1, 1)
    + " degree angle is "
    + num2Str(r, 2, 15, 1, 1);
    pause;
}

tan

Récupère la tangente d’un nombre réel.

Syntaxe

real tan(real arg)

Paramètres

Paramètre Description
Arg Nombre réel pour lequel calculer la tangente.

Valeur renvoyée

Tangente du nombre réel spécifié.

Remarques

Les valeurs du paramètre arg qui se trouvent en dehors de la plage -250 à 250 provoquent l’erreur d’exécution suivante : « Argument de la fonction trigonométrique hors plage ».

Example

L’exemple suivant illustre la fonction tan .

static void tanExample(Args _arg)
{
    real r;
    ;
    r = tan(250);
    print strFmt("Tan of 250 is %1", r);
    pause;
}

tanh

Récupère la tangente hyperbolique d’un nombre réel.

Syntaxe

real tanh(real _arg)

Paramètres

Paramètre Description
_Arg Nombre pour lequel calculer la tangente hyperbolique.

Valeur renvoyée

Tangente hyperbolique du nombre réel spécifié.

Example

L’exemple suivant illustre la fonction tanh .

static void tanhExample(Args _arg)
{
    real r;
    ;
    r = tanh(0.1);
    print "The hyperbolic tangent of angle 0.1 is "
    + num2Str(r, 2, 10, 1, 1);
    pause;
}

trunc

Tronque un nombre réel en supprimant les décimales.

Syntaxe

real trunc(real _decimal)

Paramètres

Paramètre Description
_décimal Nombre à tronquer.

Valeur renvoyée

Nombre équivalent à la valeur du paramètre _decimal après la suppression des décimales.

Remarques

Cette fonction arrondit toujours les nombres à un entier entier entier.

Example

L’exemple suivant tronque 2.7147 à 2.00.

static void truncExample(Args _arg)
{
    real r;
    ;
    r = trunc(2.7147);
    print strFmt("r = %1",  r);
    pause;
}