Lua - Mathematikbibliothek

Wir benötigen häufig mathematische Operationen in wissenschaftlichen und technischen Berechnungen und können diese mit der Standard-Lua-Bibliotheksmathematik nutzen. Die Liste der in der Mathematikbibliothek verfügbaren Funktionen ist in der folgenden Tabelle aufgeführt.

Sr.Nr. Bibliothek / Methode & Zweck
1

math.abs (x)

Gibt den absoluten Wert von x zurück.

2

math.acos (x)

Gibt den Bogenkosinus von x (im Bogenmaß) zurück.

3

math.asin (x)

Gibt den Bogensinus von x (im Bogenmaß) zurück.

4

math.atan (x)

Gibt den Bogentangens von x (im Bogenmaß) zurück.

5

math.atan2 (y, x)

Gibt den Arcustangens von y / x (im Bogenmaß) zurück, verwendet jedoch die Vorzeichen beider Parameter, um den Quadranten des Ergebnisses zu ermitteln. (Es behandelt auch den Fall, dass x Null ist, korrekt.)

6

math.ceil (x)

Gibt die kleinste Ganzzahl zurück, die größer oder gleich x ist.

7

math.cos (x)

Gibt den Cosinus von x zurück (angenommen im Bogenmaß).

8

math.cosh (x)

Gibt den hyperbolischen Cosinus von x zurück.

9

math.deg (x)

Gibt den Winkel x (im Bogenmaß angegeben) in Grad zurück.

10

math.exp (x)

Gibt den Wert e Potenz x zurück.

11

math.floor (x)

Gibt die größte Ganzzahl zurück, die kleiner oder gleich x ist.

12

math.fmod (x, y)

Gibt den Rest der Division von x durch y zurück, die den Quotienten gegen Null rundet.

13

math.frexp (x)

Gibt m und e so zurück, dass x = m2e, e eine ganze Zahl ist und der Absolutwert von m im Bereich [0,5, 1) liegt (oder Null, wenn x Null ist).

14

math.huge

Der Wert HUGE_VAL, ein Wert, der größer oder gleich einem anderen numerischen Wert ist.

15

math.ldexp (m, e)

Gibt m2e zurück (e sollte eine ganze Zahl sein).

16

math.log (x)

Gibt den natürlichen Logarithmus von x zurück.

17

math.log10 (x)

Gibt den Basis-10-Logarithmus von x zurück.

18

math.max (x, ...)

Gibt den Maximalwert unter den Argumenten zurück.

19

math.min (x, ...)

Gibt den Mindestwert unter den Argumenten zurück.

20

math.modf (x)

Gibt zwei Zahlen zurück, den Integralteil von x und den Bruchteil von x.

21

math.pi

Der Wert von pi.

22

math.pow (x, y)

Gibt xy zurück. (Sie können diesen Wert auch mit dem Ausdruck x ^ y berechnen.)

23

math.rad (x)

Gibt den Winkel x (in Grad) im Bogenmaß zurück.

24

math.random ([m [, n]])

Diese Funktion ist eine Schnittstelle zu der einfachen Pseudozufallsgeneratorfunktion rand, die von ANSI C bereitgestellt wird. Wenn sie ohne Argumente aufgerufen wird, gibt sie eine einheitliche Pseudozufalls-reelle Zahl im Bereich [0,1] zurück. Beim Aufruf mit einer Ganzzahl m gibt math.random eine einheitliche Pseudozufallszahl im Bereich [1, m] zurück. Beim Aufruf mit zwei Ganzzahlen m und n gibt math.random eine einheitliche Pseudozufallszahl im Bereich [m, n] zurück.

25

math.randomseed (x)

Setzt x als "Startwert" für den Pseudozufallsgenerator: Gleiche Startwerte erzeugen gleiche Zahlenfolgen.

26

math.sin (x)

Gibt den Sinus von x zurück (angenommen im Bogenmaß).

27

math.sinh (x)

Gibt den hyperbolischen Sinus von x zurück.

28

math.sqrt (x)

Gibt die Quadratwurzel von x zurück. (Sie können diesen Wert auch mit dem Ausdruck x ^ 0.5 berechnen.)

29

math.tan (x)

Gibt den Tangens von x zurück (angenommen im Bogenmaß).

30

math.tanh (x)

Gibt den hyperbolischen Tangens von x zurück.

Trigonometrische Funktionen

Ein einfaches Beispiel mit trigonometrischer Funktion ist unten dargestellt.

radianVal = math.rad(math.pi / 2)

io.write(radianVal,"\n")

-- Sin value of 90(math.pi / 2) degrees
io.write(string.format("%.1f ", math.sin(radianVal)),"\n")

-- Cos value of 90(math.pi / 2) degrees
io.write(string.format("%.1f ", math.cos(radianVal)),"\n")

-- Tan value of 90(math.pi / 2) degrees
io.write(string.format("%.1f ", math.tan(radianVal)),"\n")

-- Cosh value of 90(math.pi / 2) degrees
io.write(string.format("%.1f ", math.cosh(radianVal)),"\n")

-- Pi Value in degrees
io.write(math.deg(math.pi),"\n")

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

0.027415567780804
0.0 
1.0 
0.0 
1.0 
180

Andere gängige mathematische Funktionen

Ein einfaches Beispiel mit allgemeinen mathematischen Funktionen ist unten dargestellt.

-- Floor
io.write("Floor of 10.5055 is ", math.floor(10.5055),"\n")

-- Ceil
io.write("Ceil of 10.5055 is ", math.ceil(10.5055),"\n")

-- Square root
io.write("Square root of 16 is ",math.sqrt(16),"\n")

-- Power
io.write("10 power 2 is ",math.pow(10,2),"\n")
io.write("100 power 0.5 is ",math.pow(100,0.5),"\n")

-- Absolute
io.write("Absolute value of -10 is ",math.abs(-10),"\n")

--Random
math.randomseed(os.time())
io.write("Random number between 1 and 100 is ",math.random(),"\n")

--Random between 1 to 100
io.write("Random number between 1 and 100 is ",math.random(1,100),"\n")

--Max
io.write("Maximum in the input array is ",math.max(1,100,101,99,999),"\n")

--Min
io.write("Minimum in the input array is ",math.min(1,100,101,99,999),"\n")

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.

Floor of 10.5055 is 10
Ceil of 10.5055 is 11
Square root of 16 is 4
10 power 2 is 100
100 power 0.5 is 10
Absolute value of -10 is 10
Random number between 1 and 100 is 0.22876674703207
Random number between 1 and 100 is 7
Maximum in the input array is 999
Minimum in the input array is 1

Die obigen Beispiele sind nur einige der gängigen Beispiele. Wir können die Mathematikbibliothek je nach Bedarf verwenden. Versuchen Sie daher, alle Funktionen zu verwenden, um sich besser vertraut zu machen.