TapHome

Funkcje matematyczne

Funkcje matematyczne języka skryptowego TapHome — MIN, MAX, AVG (oraz warianty STRICT), ROUND, ABS, DEWPOINT, POWER, MOD, CEIL, FLOOR, RAND, RANDINT, SIGN, SQRT, LOG, LN.

MIN

Funkcja MIN zwraca minimalną wartość spośród podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Wartości NaN i NULL są ignorowane.

MIN( n1, n2, n3, …)
MIN( collection )

Przykłady:

MIN(40, 80)  		= 40
MIN(2, 2, 6) 		= 2
MIN(80, NAN)		= 80
MIN(NAN, NAN)		= NaN

VAR data := {10, 20, 30}; MIN(data) 	= 10
MIN({1, 2, 3})							= 1
MIN({1, NaN, 3})						= 1

VAR d1 := DATETIME(2014, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
VAR d2 := DATETIME(2015, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
MIN(d1, d2)			... Wynik to d1

MINSTRICT

Funkcja MINSTRICT zwraca minimalną wartość spośród podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Jeśli którakolwiek z podanych wartości jest NaN lub NULL, funkcja zwraca NaN/NULL.

MINSTRICT( n1, n2, n3, …)
MINSTRICT( collection )

Przykłady:

MINSTRICT(40, 80)  		= 40
MINSTRICT(2, 2, 6) 		= 2
MINSTRICT(80, NAN)		= NaN
MINSTRICT(NAN, NAN)		= NaN

VAR data := {10, 20, 30}; MINSTRICT(data) 	= 10
MINSTRICT({1, 2, 3})						= 1
MINSTRICT({1, NaN, 3})						= NaN

VAR d1 := DATETIME(2014, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
VAR d2 := DATETIME(2015, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
MINSTRICT(d1, NULL, d2)		... Wynik to NULL

MAX

Funkcja MAX zwraca maksymalną wartość spośród podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Wartości NaN i NULL są ignorowane.

MAX( n1, n2, n3, …)
MAX( collection )

Przykłady:

MAX(40, 80)  			= 80
MAX(2, 2, 6) 			= 6
MAX(80, NAN)			= 80
MAX(NAN, NAN)			= NaN

VAR data := {10, 20, 30}; MAX(data) = 30
MAX({1, 2, 3})						= 3
MAX({1, NaN, 3})					= 3

VAR d1 := DATETIME(2014, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
VAR d2 := DATETIME(2015, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
MAX(d1, d2)				... Wynik to d2

MAXSTRICT

Funkcja MAXSTRICT zwraca maksymalną wartość spośród podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Jeśli którakolwiek z podanych wartości jest NaN lub NULL, funkcja zwraca NaN/NULL.

MAXSTRICT( n1, n2, n3, …)
MAXSTRICT( collection )

Przykłady:

MAXSTRICT(40, 80)  			= 80
MAXSTRICT(2, 2, 6) 			= 6
MAXSTRICT(80, NAN)			= NaN
MAXSTRICT(NAN, NAN)			= NaN

VAR data := {10, 20, 30}; MAXSTRICT(data) 	= 30
MAXSTRICT({1, 2, 3})				= 3
MAXSTRICT({1, NaN, 3})				= NaN

VAR d1 := DATETIME(2014, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
VAR d2 := DATETIME(2015, 12, 8, 0, 0, 0, 0, DateTimeKind.Utc);
MAXSTRICT(d1, NULL, d2)		... Wynik to NULL

AVG

Funkcja AVG oblicza średnią arytmetyczną z podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Wartości NaN są ignorowane.

AVG( n1, n2, n3, …)
AVG( collection )

Przykłady:

AVG(40, 80)  		= 60
AVG(2, 2, 6) 		= 3.3333
AVG(80, NAN)		= 80
AVG(‘a’, ‘c’)		= ‘b’
AVG(NAN, NAN)		= NaN

VAR data := {10, 20, 30}; AVG(data) 	= 20
AVG({1, 2, 3})							= 2
AVG({1, NaN, 3})						= 2

AVGSTRICT

Funkcja AVGSTRICT oblicza średnią arytmetyczną podanych wartości liczbowych. Akceptuje od 1 do 100 argumentów lub jedną kolekcję. Jeśli któraś z wartości nie jest liczbą, zwracana jest NaN.

AVGSTRICT( n1, n2, n3, …)
AVGSTRICT( collection )

Przykłady:

AVGSTRICT(40, 80)  		= 60
AVGSTRICT(2, 2, 6) 		= 3.3333
AVGSTRICT(80, NAN)		= NaN
AVGSTRICT(NAN, NAN)		= NaN

VAR data := {10, 20, 30}; AVGSTRICT(data) 	= 20
AVGSTRICT({1, 2, 3})						= 2
AVGSTRICT({1, NaN, 3})						= NaN

ROUND

ROUND(value1)    

Zwraca wartość zaokrągloną.

Example 1: ROUND(2.01)   (Wynik to 2)
Example 2: ROUND(2.49)   (Wynik to 2)
Example 3: ROUND(2.5)   (Wynik to 3)
Example 4: ROUND(2.99)   (Wynik to 3)

ABS

Funkcja ABS zwraca wartość bezwzględną (tj. moduł) dowolnej podanej liczby.

ABS(number)

Przykłady:

ABS(100)  ...   100
ABS(-100)   ...   100

DEWPOINT

DEWPOINT(temperature, relativeHumidity)

Zwraca temperaturę punktu rosy dla bieżącej temperatury i wilgotności względnej. Punkt rosy obliczany jest zgodnie z równaniem opisanym tutaj: this equation.

Example 1: DEWPOINT(20, 0.50) (Wynik to ~9.26)
Example 2: DEWPOINT(0, 1.00) (Wynik to 0)

POWER

Funkcja POWER oblicza daną liczbę podniesioną do zadanej potęgi.

POWER(number, power)

Przykłady:

  • POWER(2,3) … 2^3 = 8
  • POWER(10, -3) … 0,001
  • POWER(25, 0) … 1

MOD

Funkcja MOD zwraca resztę z dzielenia dwóch podanych liczb.

MOD(number, divisor)

Argumenty:

  • number - liczba do podzielenia
  • divisor - wartość, przez którą dzielona jest liczba

Przykłady:

  • MOD(6, 4) … 2
  • MOD(6, 2.5) … 1

CEIL

Funkcja CEIL zaokrągla podaną liczbę w górę do najbliższej wielokrotności danej liczby.

CEIL(number, significance)

Argumenty:

  • number - liczba, która ma być zaokrąglona
  • significance (optional) - wielokrotność, do której liczba ma być zaokrąglona. Jeśli nie podano, domyślnie 1 (powinna mieć ten sam znak arytmetyczny – dodatni lub ujemny – co podana liczba).

Przykłady:

  • CEIL(22.25,0.1) … 22.3
  • CEIL(22.25,1) … 23
  • CEIL(22.25) … 23
  • CEIL(-22.25,-1) … -23
  • CEIL(-22.25,1) … -22
  • CEIL(-22.25) … -22
  • CEIL(-22.25,-5) … -25

FLOOR

Funkcja FLOOR zaokrągla liczbę w dół, w kierunku zera, do najbliższej wielokrotności określonej wartości znaczącej.

FLOOR(number, significance)

Argumenty:

  • number - liczba, która ma być zaokrąglona
  • significance (optional) - wielokrotność, do której ma być zaokrąglona podana liczba. Jeśli nie podano, domyślnie 1 (powinna mieć ten sam znak arytmetyczny co podana liczba).

Przykłady:

  • FLOOR(22.25,0.1)… 22.2
  • FLOOR(22.25,1) … 22
  • FLOOR(22.25) … 22
  • FLOOR(-22.25,-1) … -22
  • FLOOR(-22.25,1) … -23
  • FLOOR(-22.25) … -23
  • FLOOR(-22.25,-5) … -20

RAND

Funkcja RAND generuje losową liczbę rzeczywistą między 0 a 1.

RAND()

Przykłady:

  • RAND()

RANDINT

Funkcja RANDINT generuje losową liczbę całkowitą między dwoma podanymi całkowitymi.

RANDINT(bottom, top)

Przykłady:

  • RANDINT(1,5)
  • RANDINT(-2,2)

SIGN

Funkcja SIGN zwraca znak arytmetyczny (+1, -1 lub 0) podanej liczby. Tzn. jeśli liczba jest dodatnia, funkcja zwraca +1, jeśli ujemna -1, a jeśli 0, zwraca 0.

SIGN(number)

Przykłady:

  • SIGN(100) … 1
  • SIGN(0) … 0
  • SIGN(-100) … -1

SQRT

Funkcja SQRT oblicza dodatni pierwiastek z podanej liczby.

SQRT(number)

Przykłady:

  • SQRT(25) … 5

LOG

Funkcja LOG oblicza logarytm danej liczby przy zadanej podstawie.

LOG(number, base)

Argumenty:

  • number - dodatnia liczba rzeczywista, dla której obliczany jest logarytm
  • base (optional) - opcjonalny argument określający podstawę logarytmu. Jeśli nie podano, domyślnie 10.

Przykłady:

  • LOG(4,0.5) … -2
  • LOG(100) … 2

LN

Funkcja LN oblicza naturalny logarytm danej liczby.

LN(number)

gdzie argument number to dodatnia liczba rzeczywista, dla której obliczany jest logarytm naturalny.

Przykłady:

  • LN(100) … 4,60517