Funktionen zum Durchführen diverser mathematischer Operationen wie Runden, Potenzieren, Quadrieren, etc.
Gibt den Absolutwert einer bestimmten Zahl zurück.
Wert := Abs(Zahl)
Der Rückgabewert ist vom gleichen Typ wie Zahl (Integer oder Floating-Point-Zahl).
MsgBox, % Abs(-1.2) ; Gibt 1.2 zurück
Gibt eine bestimmte Zahl zurück, aufgerundet auf den nächsten Integer (ohne .00-Suffix).
Wert := Ceil(Zahl)
MsgBox, % Ceil(1.2) ; Gibt 2 zurück MsgBox, % Ceil(-1.2) ; Gibt -1 zurück
Gibt das Ergebnis von e (ca. 2.71828182845905) hoch N zurück.
Wert := Exp(N)
N kann negativ sein und einen Dezimalpunkt enthalten. Um andere Zahlen als e zu potenzieren, verwenden Sie den **-Operator.
MsgBox, % Exp(1.2) ; Gibt 3.320117 zurück
Gibt eine bestimmte Zahl zurück, abgerundet auf den nächsten Integer (ohne .00-Suffix).
Wert := Floor(Zahl)
MsgBox, % Floor(1.2) ; Gibt 1 zurück MsgBox, % Floor(-1.2) ; Gibt -2 zurück
Gibt den Logarithmus (Basis 10) einer bestimmten Zahl zurück.
Wert := Log(Zahl)
Das Ergebnis ist eine Floating-Point-Zahl. Wenn Zahl negativ ist, wird eine leere Zeichenkette zurückgegeben.
MsgBox, % Log(1.2) ; Gibt 0.079181 zurück
Gibt den Logarithmus (Basis e) einer bestimmten Zahl zurück.
Wert := Ln(Zahl)
Das Ergebnis ist eine Floating-Point-Zahl. Wenn Zahl negativ ist, wird eine leere Zeichenkette zurückgegeben.
MsgBox, % Ln(1.2) ; Gibt 0.182322 zurück
Gibt die höchste Zahl aus einer Reihe von Zahlen zurück.
Zahl := Max(Zahl1 , Zahl2, ...)
Wenn einer der Eingabewerte nicht-numerisch ist, wird eine leere Zeichenkette zurückgegeben.
MsgBox, % Max(2.11, -2, 0) ; Gibt 2.11 zurück
Sie können auch einen variadischen Parameter angeben, um ein Array von Zahlen zu übergeben. Zum Beispiel:
array := [1, 2, 3, 4] MsgBox, % Max(array*) ; Gibt 4 zurück
Gibt die niedrigste Zahl aus einer Reihe von Zahlen zurück.
Zahl := Min(Zahl1 , Zahl2, ...)
Wenn einer der Eingabewerte nicht-numerisch ist, wird eine leere Zeichenkette zurückgegeben.
MsgBox, % Min(2.11, -2, 0) ; Gibt -2 zurück
Sie können auch einen variadischen Parameter angeben, um ein Array von Zahlen zu übergeben. Zum Beispiel:
array := [1, 2, 3, 4] MsgBox, % Min(array*) ; Gibt 1 zurück
Modulo. Gibt den Rest aus einer Division zweier Zahlen zurück.
Wert := Mod(Dividend, Divisor)
Das Vorzeichen des Ergebnisses entspricht dem Vorzeichen des ersten Parameters. Wenn einer der beiden Parameter eine Floating-Point-Zahl ist, wird das Ergebnis ebenfalls eine Floating-Point-Zahl sein. Wenn der zweite Parameter 0 ist, gibt die Funktion ein leeres Ergebnis (leere Zeichenkette) zurück.
MsgBox, % Mod(7.5, 2) ; Gibt 1.5 zurück (2 x 3 + 1.5)
Gibt eine bestimmte Zahl zurück, gerundet auf N Dezimalstellen.
Wert := Round(Zahl , N)
Wenn N weggelassen wird oder 0 ist, wird Zahl auf den nächsten Integer gerundet:
MsgBox, % Round(3.14) ; Gibt 3 zurück
Wenn N positiv ist, wird Zahl auf N Dezimalstellen gerundet:
MsgBox, % Round(3.14, 1) ; Gibt 3.1 zurück
Wenn N negativ ist, wird Zahl um N Stellen links vom Dezimalpunkt gerundet:
MsgBox, % Round(345, -1) ; Gibt 350 zurück MsgBox, % Round(345, -2) ; Gibt 300 zurück
Im Gegensatz zu Transform Round hat das Ergebnis kein .000-Suffix, wenn N weggelassen wird oder kleiner als 1 ist. [v1.0.44.01+]: Ein Wert von N größer als 0 zeigt genau N Dezimalstellen an, anstatt SetFormat zu berücksichtigen. Um das zu verhindern, führen Sie eine weitere mathematische Operation am Rückgabewert von Round() durch, z.B. Round(3.333, 1)+0
.
Gibt die Quadratwurzel einer bestimmten Zahl zurück.
Wert := Sqrt(Zahl)
Das Ergebnis ist eine Floating-Point-Zahl. Wenn Zahl negativ ist, gibt die Funktion ein leeres Ergebnis (leere Zeichenkette) zurück.
MsgBox, % Sqrt(16) ; Gibt 4 zurück
Hinweis: Um Radiant in Grad umzurechnen, multiplizieren Sie den Wert mit 180/pi (ca. 57.29578). Um Grad in Radiant umzurechnen, multiplizieren Sie den Wert mit pi/180 (ca. 0.01745329252). Der Wert von pi (ca. 3.141592653589793) ist das 4-fache von Arkustangens 1.
Gibt den trigonometrischen Sinus einer bestimmten Zahl zurück.
Wert := Sin(Zahl)
Zahl muss in Radiant angegeben werden.
MsgBox, % Sin(1.2) ; Gibt 0.932039 zurück
Gibt den trigonometrischen Kosinus einer bestimmten Zahl zurück.
Wert := Cos(Zahl)
Zahl muss in Radiant angegeben werden.
MsgBox, % Cos(1.2) ; Gibt 0.362358 zurück
Gibt den trigonometrischen Tangens einer bestimmten Zahl zurück.
Wert := Tan(Zahl)
Zahl muss in Radiant angegeben werden.
MsgBox, % Tan(1.2) ; Gibt 2.572152 zurück
Gibt den Arkussinus (die Zahl, deren Sinus die angegebene Zahl ist) zurück (in Radiant).
Wert := ASin(Zahl)
Wenn Zahl kleiner als -1 oder größer als 1 ist, gibt die Funktion ein leeres Ergebnis (leere Zeichenkette) zurück.
MsgBox, % ASin(0.2) ; Gibt 0.201358 zurück
Gibt den Arkuskosinus (die Zahl, deren Kosinus die angegebene Zahl ist) zurück (in Radiant).
Wert := ACos(Zahl)
Wenn Zahl kleiner als -1 oder größer als 1 ist, gibt die Funktion ein leeres Ergebnis (leere Zeichenkette) zurück.
MsgBox, % ACos(0.2) ; Gibt 1.369438 zurück
Gibt den Arkustangens (die Zahl, deren Tangens die angegebene Zahl ist) zurück (in Radiant).
Wert := ATan(Zahl)
MsgBox, % ATan(1.2) ; Gibt 0.876058 zurück
Ungültige Operationen, wie das Dividieren durch 0, erzeugen in der Regel ein leeres Ergebnis (leere Zeichenkette).
Abs, Max, Min und Mod geben eine leere Zeichenkette zurück, wenn einer ihrer eingehenden Parameter nicht-numerisch ist. Da die meisten mathematischen Funktionen keine strikte Typprüfung durchführen, werden nicht-numerische Werte häufig als 0 oder eine andere Zahl behandelt. Zum Beispiel würde Round("1.0foo")
eine 1 zurückgeben. In AutoHotkey v2 wird dieses Verhalten geändert.