TapHome

Matematikai függvények

A TapHome szkript matematikai függvényei — MIN, MAX, AVG és ezek STRICT változatai, ABS, SIGN, SQRT, POWER, MOD, LOG, LN és DEWPOINT.

Függvények értékek összesítésére és alapvető aritmetikára. A ROUND, CEIL, FLOOR, RAND és RANDINT a Kerekítés és véletlenszámok oldalon található. Az olyan operátorok, mint a +, -, * és /, az Operátorok oldalon találhatók; % és ** operátor nincs — használd a MOD és a POWER függvényt.

MIN

A MIN a megadott értékek közül a legkisebbet adja vissza, az ismeretlen értékeket (Null és NaN) kihagyja.

1
2
MIN(value1, value2, ...)
MIN(collection)

Paraméterek — 1–100 érték, vagy pontosan egy gyűjtemény. Az értékeknek nem kell számnak lenniük, de egymással összehasonlíthatónak kell lenniük, például datetime értékek.

Visszatérési érték — a legkisebb ismert érték. Ha egyik érték sem ismert, az eredmény NaN (Null, ha minden bemenet Null).

Példa

MIN(40, 80, NaN);
# Result: 40
MIN({1, NaN, 3});
# Result: 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);
# Result: the value of d1

Hibák — Collection is empty üres gyűjtemény esetén.

MINSTRICT

A MINSTRICT a megadott értékek közül a legkisebbet adja vissza, de amint ismeretlen értékre (Null vagy NaN) talál, inkább azt adja vissza — akkor használd, ha egyetlen hiányzó bemenetnek a teljes eredményt érvénytelenítenie kell.

1
2
MINSTRICT(value1, value2, ...)
MINSTRICT(collection)

Példa

MINSTRICT(40, 80);
# Result: 40
MINSTRICT(80, NaN);
# Result: NaN
MINSTRICT({1, NaN, 3});
# Result: NaN

Az argumentumok és a hibák ugyanazok, mint a MIN esetén.

MAX

A MAX a megadott értékek közül a legnagyobbat adja vissza, az ismeretlen értékeket (Null és NaN) kihagyja; ugyanazokat az argumentumokat fogadja, mint a MIN.

1
2
MAX(value1, value2, ...)
MAX(collection)

Példa

MAX(40, 80, NaN);
# Result: 80
MAX({1, NaN, 3});
# Result: 3

MAXSTRICT

A MAXSTRICT a megadott értékek közül a legnagyobbat adja vissza, vagy az első ismeretlen értéket (Null vagy NaN), amelyre talál.

1
2
MAXSTRICT(value1, value2, ...)
MAXSTRICT(collection)

Példa

MAXSTRICT(2, 2, 6);
# Result: 6
MAXSTRICT({1, NaN, 3});
# Result: NaN

AVG

Az AVG a megadott értékek számtani átlagát adja vissza double típusként, a Null és a NaN értékeket kihagyja.

1
2
AVG(value1, value2, ...)
AVG(collection)

Visszatérési érték — double; NaN, ha egyik érték sem ismert. A karakterek átlaga a karakterkódjaik alapján számítódik, ezért az AVG('a', 'c') eredménye a 98-as szám, nem a 'b' karakter.

Példa

AVG(40, 80, NaN);
# Result: 60
AVG({1, NaN, 3});
# Result: 2
AVG('a', 'c');
# Result: 98

AVGSTRICT

Az AVGSTRICT a megadott értékek számtani átlagát adja vissza, vagy NaN értéket, amint valamelyikük NaN.

1
2
AVGSTRICT(value1, value2, ...)
AVGSTRICT(collection)

Visszatérési érték — double. A Null bemenet futásidejű hibát okoz, nem kihagyott érték.

Példa

AVGSTRICT(40, 80);
# Result: 60
AVGSTRICT(80, NaN);
# Result: NaN

ABS

Az ABS egy szám abszolút értékét adja vissza double típusként.

ABS(-100);
# Result: 100

SIGN

A SIGN negatív számra -1, nullára 0, pozitív számra 1 értéket ad vissza, int típusként.

SIGN(-22.5);
# Result: -1

SQRT

Az SQRT egy 0 vagy nagyobb szám négyzetgyökét adja vissza.

SQRT(25);
# Result: 5

Hibák — Argument for SQRT cannot be less than 0.

POWER

A POWER egy számot a megadott kitevőre emel; a kitevő lehet negatív vagy tört is.

1
POWER(number, exponent)

Példa

POWER(2, 3);
# Result: 8
POWER(10, -3);
# Result: 0.001
POWER(25, 0.5);
# Result: 5

MOD

A MOD az egyik szám a másikkal való osztásának maradékát adja vissza; tizedes számokkal is működik.

1
MOD(dividend, divisor)

Visszatérési érték — double az osztandó előjelével, így negatív osztandó negatív maradékot ad (az Excel MOD függvényétől eltérően). A 0 osztó NaN eredményt ad, nem hibát.

Példa

MOD(6, 4);
# Result: 2
MOD(6, 2.5);
# Result: 1
MOD(-7, 3);
# Result: -1

LOG

A LOG egy pozitív szám logaritmusát adja vissza a megadott alapon, vagy 10-es alapon, ha az alapot elhagyod.

1
2
LOG(number)
LOG(number, base)

Példa

LOG(100);
# Result: 2
LOG(4, 0.5);
# Result: -2

Hibák — Arguments for LOG cannot be less or equal to 0; Second argument for LOG cannot be less or equal to 0 or 1.

LN

Az LN egy pozitív szám természetes (e alapú) logaritmusát adja vissza.

LN(100);
# Result: 4.605 (rounded)

Hibák — Argument for LN cannot be less or equal to 0.

DEWPOINT

A DEWPOINT a harmatpontot adja vissza °C-ban a levegő °C-ban megadott hőmérsékletéből és a 0 és 1 közötti törtként megadott relatív páratartalomból (a 0.5 50 %-ot jelent).

1
DEWPOINT(temperature, relativeHumidity)

Visszatérési érték — double, a Magnus-képlettel számítva (egyenlet). Ha egy argumentum egyáltalán nem szám (például Null vagy szöveg), az eredmény -40.

Példa

DEWPOINT(20, 0.5);
# Result: 9.26 (rounded)
DEWPOINT(0, 1);
# Result: 0

A páratartalmat törtként add meg. A DEWPOINT(20, 50) hibaüzenet nélkül 103.17-et ad vissza, ami értelmetlen érték. A százalékban megadott páratartalmat, például egy Modbus regiszterből olvasott nyers értéket, előbb el kell osztani 100-zal.