Arrotondamento e numeri casuali
Funzioni degli script TapHome per l'arrotondamento e i numeri casuali — ROUND, CEIL e FLOOR con multiplo, RAND e RANDINT.
Funzioni che arrotondano un numero o ne producono uno casuale. Tutte restituiscono un double. Le altre funzioni aritmetiche sono nella pagina Funzioni matematiche.
ROUND
ROUND arrotonda un numero all’intero più vicino; la metà viene arrotondata lontano da zero (2.5 a 3, -2.5 a -3).
| |
Note — ROUND non ha un argomento per i decimali. Per arrotondare a un decimale, moltiplica per 10, arrotonda e dividi per 10; per due decimali usa 100.
Esempio
ROUND(2.49);
# Result: 2
ROUND(2.5);
# Result: 3
ROUND(-2.5);
# Result: -3
ROUND(21.46 * 10) / 10;
# Result: 21.5CEIL
CEIL arrotonda un numero per eccesso all’intero successivo oppure, se è indicato, al multiplo successivo di significance.
| |
Parametri
| Nome | Tipo | Descrizione |
|---|---|---|
number | numero | Valore da arrotondare. |
significance | numero, facoltativo | Multiplo a cui arrotondare, per esempio 0.5 o 5. Predefinito 1. Non deve essere 0 e non deve essere negativo quando number è positivo. |
Note — Con un significance positivo il risultato si sposta verso più infinito, quindi un numero negativo si sposta verso lo zero (CEIL(-22.25, 1) è -22). Con un significance negativo un numero negativo si allontana dallo zero (CEIL(-22.25, -1) è -23).
Esempio
| Chiamata | Risultato |
|---|---|
CEIL(22.25) | 23 |
CEIL(22.25, 0.5) | 22.5 |
CEIL(22.25, 5) | 25 |
CEIL(-22.25) | -22 |
CEIL(-22.25, -1) | -23 |
CEIL(-22.25, -5) | -25 |
Errori — Significance cannot be 0.; Significance cannot be negative value if a number is a positive value.
FLOOR
FLOOR arrotonda un numero per difetto all’intero precedente oppure, se è indicato, al multiplo precedente di significance.
| |
I parametri e gli errori sono gli stessi di CEIL.
Note — Con un significance positivo il risultato si sposta verso meno infinito, quindi un numero negativo si allontana dallo zero (FLOOR(-22.25, 1) è -23). Con un significance negativo un numero negativo si sposta verso lo zero (FLOOR(-22.25, -1) è -22).
Esempio
| Chiamata | Risultato |
|---|---|
FLOOR(22.25) | 22 |
FLOOR(22.25, 0.5) | 22 |
FLOOR(17, 5) | 15 |
FLOOR(-22.25) | -23 |
FLOOR(-22.25, -1) | -22 |
FLOOR(-22.25, -5) | -20 |
Una divisione intera, per esempio i giorni a partire dai secondi:
VAR uptime := 200000;
FLOOR(uptime / 86400);
# Result: 2RAND
RAND restituisce un numero casuale da 0 fino a 1, escluso; ogni chiamata dà un nuovo valore.
| |
Esempio
RAND() * 100;
# Result: a random number from 0 to just below 100RANDINT
RANDINT restituisce un numero intero casuale da min fino a max, escluso.
| |
Valore restituito — double contenente un numero intero. Usa numeri interi per entrambi i limiti: con un min decimale il risultato può essere inferiore a min.
Esempio
RANDINT(1, 7);
# Result: 1, 2, 3, 4, 5 or 6