Funzioni numeriche

Completato

Quando si lavora con dati numerici, potrebbe essere utile usare le funzioni. Ad esempio, si lavora con importi numerici e si desidera eseguire un calcolo su un importo per poi arrotondare il risultato. La funzione Round può essere usata per completare questa attività. Sono inoltre disponibili funzioni aggiuntive da usare quando si lavora con dati numerici.

Le funzioni numeriche includono:

  • Round

  • Abs

  • Power

  • Random

  • Randomize

Funzione Round

La funzione Round consente di arrotondare un numero. Come parametro, è possibile specificare la precisione e la direzione.

NewNumber := Round(Number [, Precision] [, Direction]);

Il numero e la precisione sono tipi di dati decimali. La precisione è un parametro facoltativo e usa per impostazione predefinita la funzione ReadRounding da CodeUnit 1, Gestione applicazioni.

Il parametro Direction è un tipo di dati testo e può avere questi valori:

  • '=': arrotonda per eccesso o per difetto al valore più vicino (impostazione predefinita). I valori pari o superiori a cinque vengono arrotondati per eccesso; i valori inferiori a cinque vengono arrotondati per difetto.

  • '> ': arrotonda per eccesso.

  • '< ': arrotonda per difetto.

NewNumber := Round(1234.56789, 0.001, '>');
Message('%1', NewNumber);
// Displays : 1,234.568

Funzioni Abs e Power

La funzione Abs calcolerà il valore assoluto di un numero. Il valore assoluto di un numero restituisce un valore numerico positivo o zero.

NewNumber := Abs(Number);

Example:

NewNumber := Abs(-10.235);

Message(\'%1\', NewNumber);

// Displays : 10.235

Funzione Power

La funzione Power viene usata per elevare un numero a potenza. Ad esempio, è possibile usare questa funzione per elevare al quadrato il numero 2 e ottenere come risultato 4.

NewNumber :=  System.Power(Number: Decimal, Power: Decimal)

Nell'esempio seguente viene mostrata la funzione Power.

var
    Number1: Decimal;
    Power1: Decimal;
    Result1: Decimal;
    Text000: Label '%1 raised to the power of %2 = %3';
begin
    Number1 := 64;   
    Power1 := 0.5;  
    Result1 := POWER(Number1, Power1);  
    MESSAGE(Text000, Number1, Power1, Result1);
end;

Funzioni Random e Randomize

La funzione Random viene usata per creare un nuovo numero casuale. Prima di eseguire la funzione Random, è possibile anche eseguire la funzione Randomize, con un valore di inizializzazione. Questa azione garantisce che, quando viene eseguita la funzione Random in un ciclo, viene generato un nuovo numero casuale.

Se non viene specificato un valore di inizializzazione, verranno usati i dati dell'orologio di sistema.

La funzione Random accetta un parametro che specifica il numero massimo accettabile. Restituirà un numero compreso tra uno e il valore MaxNumber. Se MaxNumber è zero, questa funzione restituirà sempre 1. Un valore MaxNumber negativo verrà trattato come un numero positivo.

Randomize([Seed])
Number := Random(MaxNumber);