Funzioni fase di esecuzione matematica X++

Questo articolo descrive le funzioni di runtime matematiche.

Queste funzioni eseguono calcoli matematici.

abs

Recupera il valore assoluto di un numero reale. Examples:

  • abs(-100.0) restituisce il valore 100,0.
  • abs(30,56) restituisce il valore 30,56.

Syntax

real abs(real arg)

Parameters

Parameter Description
arg Numero di cui ottenere il valore assoluto.

Return value

Valore assoluto di 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

Recupera l'arco coseno di un numero reale.

Note

Se si specificano valori di argomento esterni all'intervallo -1 a 1, la funzione restituisce l'errore di run-time seguente: "Argument for trigonometric function out of range".

Syntax

real acos(real arg)

Parameters

Parameter Description
arg Numero di cui recuperare l'arco coseno.

Return value

L'arco coseno dell'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

Recupera l'arcosine di un numero reale.

Note

Se si specificano valori di argomento esterni all'intervallo -1 a 1, la funzione restituisce l'errore di run-time seguente: "Argument for trigonometric function out of range".

Syntax

real asin(real arg)

Parameters

Parameter Description
arg Numero per il quale calcolare l'arcosine.

Return value

Arcosine del numero specificato.

Remarks

aSin(0.36) restituisce 0,37.

atan

Recupera l'arcotangente di un numero reale.

Syntax

real atan(real arg)

Parameters

Parameter Description
arg Numero per il quale calcolare la tangente dell'arco.

Return value

Tangente di arco del numero specificato.

Remarks

aTan(0.36) restituisce 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

Recupera lo stato del flag di correzione per un numero reale.

Syntax

int corrFlagGet(real arg)

Parameters

Parameter Description
arg Flag per cui recuperare lo stato.

Return value

Valore diverso da zero se il flag è impostato; 0 (zero) se il flag è cancellato.

Example

Nell'esempio seguente viene visualizzato 1.

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

corrFlagSet

Controlla il flag di correzione per un numero reale.

Syntax

real corrFlagSet(real real, int arg)

Parameters

Parameter Description
real Numero in cui attivare o disattivare il flag di correzione.
arg 0 per disattivare la bandiera; valore diverso da zero per attivare il flag.

Return value

0 se la bandiera è ora disattivata; valore diverso da zero se il flag è ora attivo.

cos

Recupera il coseno di un numero reale.

Syntax

real cos(real arg)

Parameters

Parameter Description
arg Numero per cui trovare il coseno.

Return value

Coseno del numero specificato.

Remarks

Immettere il valore del parametro arg in radianti.

Example

Nell'esempio di codice seguente viene visualizzato 0.76.

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

cosh

Recupera il coseno iperbolico di un numero reale.

Note

Se si immettono valori di argomento non compresi nell'intervallo -250 a 250, viene visualizzato l'errore di run-time seguente: "Argomento per la funzione trigonometrica non compresa nell'intervallo".

Syntax

real cosh(real arg)

Parameters

Parameter Description
arg Numero iperbolico per il quale calcolare il coseno.

Return value

Coseno iperbolico del numero specificato.

Remarks

Immettere il valore del parametro arg in radianti.

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

Arrotonda un numero al numero specificato di posizioni decimali.

Syntax

real decRound(real figure, int decimals)

Parameters

Parameter Description
figure Numero da arrotondare.
decimals Numero di posizioni decimali da arrotondare.

Return value

Valore del numero specificato, arrotondato al numero specificato di posizioni decimali.

Remarks

Il valore del parametro decimals può essere positivo, 0 (zero) o negativo.

  • decRound(1234.6574,2) restituisce il valore 1234,66.
  • decRound(1234,6574,0) restituisce il valore 1235.
  • decRound(1234.6574,-2) restituisce il valore 1200.
  • decRound(12345,6789,1) restituisce il valore 12345,70.
  • decRound(12345,6789,-1) restituisce il valore 12350,00.

exp

Recupera l'antiloaritmo naturale del numero reale specificato.

Syntax

real exp(real arg)

Parameters

Parameter Description
arg Numero reale per il quale calcolare l'antiloaritmo naturale.

Return value

Antiloaritmo naturale del numero reale specificato.

Remarks

L'antiloaritmo naturale calcolato è il logaritmo naturale e elevato alla potenza che indica il parametro arg .

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

Recupera l'antiloaritmo in base 10 del numero reale specificato.

Syntax

real exp10(real decimal)

Parameters

Parameter Description
decimal Numero reale per il quale calcolare l'antiloaritmo di base 10.

Return value

Antiloaritmo basato su 10 del valore del parametro decimale .

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

Recupera la parte decimale di un numero reale.

Syntax

real frac(real decimal)

Parameters

Parameter Description
decimal Numero reale per cui recuperare la parte decimale.

Return value

Parte decimale del numero specificato.

Remarks

frac(12.345) restituisce il valore 0,345.

log10

Recupera il logaritmo in base 10 di un numero reale.

Syntax

real log10(real arg)

Parameters

Parameter Description
arg Numero per il quale calcolare il logaritmo.

Return value

Logaritmo di base 10 del numero specificato.

Remarks

log10(200) restituisce il valore 2.30.

logN

Recupera il logaritmo naturale del numero reale specificato.

Syntax

real logN(real arg)

Parameters

Parameter Description
arg Numero per il quale calcolare il logaritmo naturale.

Return value

Logaritmo naturale del numero specificato.

Remarks

logN(45) restituisce il valore 3,81.

max

Recupera le dimensioni maggiori di due valori specificati.

anytype max(anytype object1, anytype object2)

Parameters

Parameter Description
object1 Primo valore.
object2 Secondo valore.

Return value

Maggiore dei due valori specificati usando i parametri object1 e object2 .

Remarks

  • max(12.0,12.1) restituisce il valore 12.1.
  • max(2,33) restituisce il valore 33.

min

Recupera il più piccolo di due valori specificati.

anytype min(anytype object1, anytype object2)

Parameters

Parameter Description
object1 Primo valore.
object2 Secondo valore.

Return value

Minore dei due valori specificati usando i parametri object1 e object2 .

Remarks

min(2,33) restituisce il valore 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.";
}

power

Genera un numero reale alla potenza di un altro numero reale.

Syntax

real power(real arg, real exponent)

Parameters

Parameter Description
arg Numero di cui calcolare la potenza.
exponent Numero a cui aumentare il numero specificato utilizzando il parametro arg .

Return value

Numero reale che corrisponde al numero specificato usando il parametro arg per la potenza del numero specificato usando il parametro exponent .

Remarks

  • power(5,0,2,0) restituisce il valore 25,0.
  • power(4,0,0,5) restituisce il valore 2,0.

round

Arrotonda un numero reale al multiplo più vicino di un altro numero reale.

Syntax

real round(real _arg, real _decimals)

Parameters

Parameter Description
_arg Numero originale.
_decimals Numero di cui il valore del parametro _arg deve essere arrotondato a un multiplo di .

Return value

Numero multiplo del valore specificato dal parametro _decimals e più vicino al valore specificato dal parametro _arg .

Remarks

Per arrotondare un numero reale a un numero specificato di posizioni decimali, utilizzare la funzione di decround.

Remarks

  • round(123.45,5.00) restituisce il valore 125.00.
  • round(7.45,1.05) restituisce il valore 7.35.
  • round(23.9,5.0) restituisce il valore 25.00.
  • round(26.1,5.0) restituisce il valore 25.00.

sin

Recupera il seno di un numero reale.

Syntax

real sin(real _arg)

Parameters

Parameter Description
_arg Numero per il quale calcolare il seno.

Return value

Seno del numero reale specificato.

Remarks

Il valore del parametro _arg deve essere espresso in radianti.

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

Recupera il seno iperbolico di un numero reale.

Syntax

real sinh(real _arg)

Parameters

Parameter Description
_arg Numero per il quale calcolare il seno iperbolico.

Return value

Seno iperbolico del numero reale specificato.

Remarks

I valori per il parametro _arg esterni all'intervallo -250 a 250 causano l'errore di run-time seguente: "Argomento per la funzione trigonometrica non compreso nell'intervallo".

Example

Nell'esempio seguente viene illustrata la funzione 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

Recupera la tangente di un numero reale.

Syntax

real tan(real arg)

Parameters

Parameter Description
arg Numero reale per il quale calcolare la tangente.

Return value

Tangente del numero reale specificato.

Remarks

I valori per il parametro arg che non rientrano nell'intervallo -250 a 250 causano l'errore di run-time seguente: "Argomento per la funzione trigonometrica non compreso nell'intervallo".

Example

Nell'esempio seguente viene illustrata la funzione tan .

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

tanh

Recupera la tangente iperbolica di un numero reale.

Syntax

real tanh(real _arg)

Parameters

Parameter Description
_arg Numero per il quale calcolare la tangente iperbolica.

Return value

Tangente iperbolica del numero reale specificato.

Example

Nell'esempio seguente viene illustrata la funzione 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

Tronca un numero reale rimuovendo le posizioni decimali.

Syntax

real trunc(real _decimal)

Parameters

Parameter Description
_decimal Numero da troncare.

Return value

Numero equivalente al valore del parametro _decimal dopo la rimozione delle posizioni decimali.

Remarks

Questa funzione arrotonda sempre i numeri fino a un intero intero.

Example

L'esempio seguente tronca da 2.7147 a 2.00.

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