Referenz der eingebauten Funktionen
Diese Seite listet alle Funktionen auf, die in Varlig Calc eingebaut sind. Du rufst eine Funktion
mit ihrem Namen auf und schreibst die Argumente durch Kommas getrennt in Klammern: sqrt(16),
round(17.46, 0.05).
- Groß- und Kleinschreibung spielt bei Namen keine Rolle,
SQRT(16)funktioniert also auch. - Die Anzahl der Argumente wird geprüft.
sqrt(4, 9)zeigt einen Fehler an, statt die 9 zu ignorieren. - Zahlen dürfen ihre Tausendertrennzeichen behalten. Ein Komma, auf das drei Ziffern folgen,
gruppiert Tausender, und ein Komma mit einem Leerzeichen danach trennt Argumente.
max(1,000, 2,000)ergibt also 2.000 undsqrt(1,024)ergibt 32. - Runde oder rechne das Ergebnis einer Funktion in derselben Zeile um, etwa mit
sqrt(2) to 4 dpoderabs(-5 km) in m. - Such einen Namen in der Tabelle unten und lies dann im zugehörigen Abschnitt Details und Beispiele nach.
Für viele Funktionen gibt es auch eine englische Formulierung, etwa square root of 16; siehe
Mathe in Worten. Wie du eigene Funktionen schreibst, erfährst du unter
Eigene Funktionen.
Alle Funktionen
| Funktion | Bedeutung |
|---|---|
abs(x) |
Betrag; behält Einheiten; Betrag einer komplexen Zahl |
sign(x) |
−1, 0 oder 1 |
int(x), trunc(x) |
Ganzzahliger Anteil, in Richtung null |
round(x), round(x, step) |
Nächste ganze Zahl oder nächstes Vielfaches von step |
floor(x), floor(x, step) |
Abrunden, in Richtung minus unendlich |
ceil(x), ceil(x, step) |
Aufrunden, in Richtung plus unendlich |
sqrt(x), cbrt(x) |
Quadrat- und Kubikwurzel; Wurzeln behalten Einheiten, die glatt aufgehen |
exp(x), ln(x) |
Natürliche Exponentialfunktion und natürlicher Logarithmus |
log(x), log10(x), log2(x), logbase(x, b) |
Logarithmen |
sin, cos, tan |
Trigonometrie im Bogenmaß oder mit einem Winkel wie 30° |
sind, cosd, tand |
Trigonometrie in Grad |
asin, acos, atan |
Umkehrfunktionen der Trigonometrie, Ergebnis im Bogenmaß |
asind, acosd, atand |
Umkehrfunktionen der Trigonometrie, Ergebnis in Grad |
atan2(y, x) |
Winkel im Bogenmaß unter Berücksichtigung des Quadranten |
sinh, cosh, tanh, asinh, acosh, atanh |
Hyperbelfunktionen |
factorial(n), fact(n) |
Fakultät; auch als n! schreibbar |
gcd(a, b), lcm(a, b) |
Größter gemeinsamer Teiler und kleinstes gemeinsames Vielfaches; exakt, auch für Brüche |
combination(n, k), permutation(n, k) |
Anzahl der Auswahlmöglichkeiten |
clamp(x, low, high) |
Wert innerhalb von Grenzen halten |
hex(n), bin(n) |
Zahl hexadezimal oder binär anzeigen |
random(), rand(), random(a, b), rand(a, b) |
Zufallszahlen |
complex(re, im), real, imag, conj, arg |
Komplexe Zahlen |
sum, total, product, average, mean, avg, median, min, max, count, length, variance, stddev, stdev |
Summen und Statistik einer Liste (einige akzeptieren auch einzelne Argumente) |
sum(expr, var, lo, hi), summation(...), product(expr, var, lo, hi) |
Summen und Produkte über eine Zählvariable |
range(a, b), range(a, b, step) |
Liste von Zahlen, beide Enden eingeschlossen |
sort, reverse, unique, slice(list, start, end) |
Liste umordnen oder Teile daraus auswählen |
map(expr, var, list), filter(cond, var, list) |
Jedes Element einer Liste berechnen oder prüfen |
dot, cross, identity(n), shape, transpose, det, inverse, trace, rank |
Vektoren und Matrizen |
solve_system(A, b), eigenvalues, qr, lu, svd |
Lineare Gleichungssysteme und Matrixzerlegungen |
solve(equation, var, lo, hi) |
Gleichung numerisch zwischen zwei Grenzen lösen |
differentiate(expr, var), derivative(expr, var) |
Ableitung als Formel |
differentiate(expr, var, point), derivative(expr, var, point) |
Ableitung an einer Stelle, als Zahl |
integrate(expr, var, lo, hi) |
Bestimmtes Integral, numerisch berechnet |
easter(year) |
Westlicher Ostersonntag |
tyre_speed(width, aspect, rim, rotation) |
Fahrgeschwindigkeit aus Reifengröße und Raddrehzahl |
Zahlen und Zählen
| Funktion | Argumente und Bedeutung |
|---|---|
abs(x) |
Betrag; behält die Einheit einer Größe; Betrag einer komplexen Zahl |
sign(x) |
Vorzeichen einer einfachen reellen Zahl: -1, 0 oder 1 |
int(x), trunc(x) |
Ganzzahliger Anteil, in Richtung null |
sqrt(x) |
Quadratwurzel; für eine negative Zahl fragst du nach einer komplexen Wurzel: sqrt(-16 + 0i) |
cbrt(x) |
Kubikwurzel, auch von negativen Zahlen |
factorial(n), fact(n) |
Fakultät einer ganzen Zahl ab 0; auch als n! schreibbar |
gcd(a, b) |
Größter gemeinsamer Teiler zweier exakter Zahlen, nie negativ |
lcm(a, b) |
Kleinstes gemeinsames Vielfaches zweier exakter Zahlen, nie negativ |
clamp(x, low, high) |
Wert zwischen low und high halten, alle von derselben Art; untere Grenze zuerst |
permutation(n, k) |
Geordnete Auswahl von k Elementen aus n |
combination(n, k) |
Ungeordnete Auswahl von k Elementen aus n |
hex(x), bin(x) |
Zahl hexadezimal oder binär anzeigen |
abs(-£45.20) ergibt £45.20sign(-5) ergibt -1int(7.8) ergibt 7sqrt(144 m^2) ergibt 12 mcbrt(-27) ergibt -3factorial(5) ergibt 120gcd(1920, 1080) ergibt 120lcm(4, 6) ergibt 12clamp(115, 0, 100) ergibt 100clamp(£120, £0, £100) ergibt £100.00combination(10, 2) ergibt 45permutation(8, 3) ergibt 336hex(255) ergibt 0xFFbin(10) ergibt 0b1010Ein paar Beispiele aus dem Alltag: gcd(1920, 1080) zeigt, dass ein Bildschirm mit 1920 × 1080
das Format 16:9 hat (1920 ÷ 120 zu 1080 ÷ 120). combination(10, 2) ist die Zahl der
verschiedenen Paare in einer Gruppe von zehn, und permutation(8, 3) die Zahl der Möglichkeiten,
Gold, Silber und Bronze unter acht Läuferinnen und Läufern zu vergeben.
clamp behält bei Geld, Größen und Dauern die Einheit, wenn der Wert und beide Grenzen dasselbe
messen. So deckelt clamp(£120, £0, £100) eine Erstattung bei £100.00. Verwende für Fakultäten
und Auswahlen ganze Zahlen, bei denen k nicht größer als n ist. 5! ist eine kürzere
Schreibweise für factorial(5). Für andere Wurzeln verwendest du die Formulierung
root 3 of 27; eine allgemeine Funktion root(...) gibt es nicht.
Runden
round, floor und ceil akzeptieren optional eine Schrittweite, auf die gerundet wird:
round(17.46, 0.05) ergibt 17.45ceil(23, 6) ergibt 24floor(7.8) ergibt 7ceil(23, 6) rundet 23 Eier auf volle Sechserkartons auf. Die Schrittweite ist keine Anzahl von
Nachkommastellen: round(17.456, 2) rundet auf das nächste Vielfache von 2 und ergibt 18, und ein
Hinweis an round schlägt stattdessen 17.456 to 2 dp vor. Für signifikante Stellen schreibst du
to 3 sf. Unter Runden erfährst du mehr über halbe Werte, negative Zahlen
und Geldbeträge.
Trigonometrie und Winkel
| Funktionsfamilie | Bedeutung |
|---|---|
sin, cos, tan |
Trigonometrie; eine einfache Zahl gilt als Bogenmaß |
sind, cosd, tand |
Trigonometrie einer einfachen Zahl in Grad |
asin, acos, atan |
Umkehrfunktionen der Trigonometrie; das Ergebnis hat die Einheit rad |
asind, acosd, atand |
Umkehrfunktionen der Trigonometrie, Ergebnis in Grad |
atan2(y, x) |
Winkel unter Berücksichtigung des Quadranten, als einfache Zahl im Bogenmaß |
sinh, cosh, tanh |
Hyperbelfunktionen |
asinh, acosh, atanh |
Umkehrfunktionen der Hyperbelfunktionen |
sin(30°) ergibt 0.5cosd(60) ergibt 0.5tan(45°) ergibt 1sin(pi/2) ergibt 1asind(0.5) ergibt 30°asin(1) ergibt 1.5707963268 radasin(0.5) in degrees ergibt 30°atan2(-1, -1) * 180 / pi ergibt -135cosh(0) ergibt 1sin, cos und tan akzeptieren einen Winkel in jeder Winkeleinheit, etwa 30° oder
30 degrees. Um das Ergebnis von asin, acos oder atan in Grad zu sehen, hängst du wie oben
in degrees an oder verwendest die Grad-Varianten.
atan2 erwartet zuerst den y-Wert und ermittelt, in welchem Quadranten der Winkel liegt. So
zeigt atan2(-1, -1) nach links unten (−135°), während atan(1) allein das nicht unterscheiden
kann.
Hyperbelfunktionen erwarten einfache Zahlen. Umkehrfunktionen akzeptieren nur Werte aus ihrem
reellen Definitionsbereich; asin(2) zeigt zum Beispiel Error: imaginary number an. Für
komplexe Ergebnisse siehe Komplexe Zahlen.
Logarithmen und Exponentialfunktionen
| Funktion | Bedeutung |
|---|---|
ln(x) |
Natürlicher Logarithmus |
log(x), log10(x) |
Logarithmus zur Basis 10 |
log2(x) |
Logarithmus zur Basis 2 |
logbase(x, b) |
Logarithmus von x zur Basis b |
exp(x) |
Natürliche Exponentialfunktion |
log(1000) ergibt 3log10(1000000) ergibt 6log2(1024) ergibt 10logbase(81, 3) ergibt 4ln(exp(2)) ergibt 2exp(0) ergibt 1Ein Logarithmus braucht eine positive Zahl: log(0) zeigt Error: ∞ an und log(-100) zeigt
Error: imaginary number. Für den komplexen Logarithmus schreibst du die Zahl als komplexe Zahl,
etwa ln(-1 + 0i). Die Basis muss positiv und ungleich 1 sein. Logarithmen,
Exponentialfunktionen und Hyperbelfunktionen akzeptieren keine Einheiten und keine Geldbeträge.
Zufallswerte
random number between 1 and 6 ergibt 4random(1, 6) ergibt 2rand(1, 100) ergibt 57random() ergibt 0.4381930527rand() ergibt 0.9102746385random(0, 1) ergibt 0.2373052626random(a, b)und die Formulierungrandom number between a and bliefern eine ganze Zahl vonabisb, beide Enden eingeschlossen.random()liefert einen Bruch von 0 bis ausschließlich 1.random(0, 1)ist ein Sonderfall, der dasselbe tut.randist ein anderer Name fürrandom.- Die Grenzen müssen einfache ganze Zahlen im Bereich von 64-Bit-Ganzzahlen sein, die kleinere zuerst. Ein einzelnes Argument, mehr als zwei, Brüche oder vertauschte Grenzen führen zu einem Fehler.
- Varlig kann bei jeder Neuberechnung der Notiz eine neue Zahl ziehen. Speichere eine Ziehung in
einer Variablen, etwa
Wurf = random(1, 6), wenn spätere Zeilen dieselbe Zahl verwenden sollen.
Listen und Statistik
average([12, 18, 9, 21]) ergibt 15median([3, 9, 4, 7, 5]) ergibt 5sum([£12.50, £8, £4.25]) ergibt £24.75max(4, 9, 2) ergibt 9stddev([2, 4, 6]) ergibt 2sum(k, k, 1, 100) ergibt 5,050range(0, 20, 5) ergibt [0, 5, 10, 15, 20]sort([3, 1, 2]) ergibt [1, 2, 3]slice([10, 20, 30, 40], 1, 3) ergibt [20, 30]map(x * 1.2, x, [£10, £25]) ergibt [£12.00, £30.00]filter(x > 10, x, [4, 12, 18]) ergibt [12, 18]sum (auch total), product, average (auch mean und avg), median, min, max,
count, length, variance und stddev (auch stdev) arbeiten mit einer Liste, einige
akzeptieren auch einzelne Argumente. Eine Perzentilfunktion gibt es nicht. sum, summation und product mit vier Argumenten addieren oder multiplizieren einen Ausdruck,
während eine Zählvariable von lo bis hi läuft. reverse und unique erwarten ebenfalls eine
Liste. Unter Listen und Statistik erfährst du mehr über
Positionen in slice, Stichproben- und Grundgesamtheitsstatistik und mehr.
Vektoren, Matrizen und Analysis
dot([1, 2, 3], [4, 5, 6]) ergibt 32det([[2, 1], [1, 3]]) ergibt 5solve_system([[1, 1], [1, -1]], [10, 2]) ergibt [6, 4]solve(x * 1.2 = 60, x, 0, 100) ergibt 50differentiate(x^2, x, 3) ergibt 6integrate(x^2, x, 0, 3) ergibt 9solve_system([[1, 1], [1, -1]], [10, 2]) findet zwei Zahlen, deren Summe 10 und deren
Differenz 2 ist. solve(x * 1.2 = 60, x, 0, 100) sucht zwischen 0 und 100 den Preis vor 20 %
Mehrwertsteuer, der 60 ergibt. Zu cross, identity, shape, transpose, inverse, trace,
rank, eigenvalues, qr, lu und svd siehe Vektoren und Matrizen.
Zu Ableitungen als Formeln und den Grenzen des Lösers und des Integrators siehe
Summen, Gleichungen lösen und Analysis und
Höhere Mathematik: Möglichkeiten und Grenzen.
Komplexe Zahlen
abs(3 + 4i) ergibt 5complex(3, 4) ergibt 3 + 4iconj(3 + 4i) ergibt 3 - 4ireal(3 + 4i) ergibt 3imag(3 + 4i) ergibt 4arg(z) liefert den Winkel einer komplexen Zahl im Bogenmaß. Siehe
Komplexe Zahlen.
Datum und Fahrzeuge
easter(2030) ergibt April 21, 2030tyre_speed(205, 55, 16, 1000 rpm) in km/h ergibt 119.1103438682 km/heaster(year) liefert den westlichen Ostersonntag eines Jahres, dasselbe Datum wie die
Formulierung Easter 2030. Du kannst direkt von ihm aus Tage zählen, etwa mit
easter(2030) + 1 day. Siehe Datum und Kalender. tyre_speed erwartet die
Reifenbreite in Millimetern, das Querschnittsverhältnis in Prozent, den Felgendurchmesser in Zoll
und die Drehzahl des Rades; siehe
Kochen, Klang, Bildschirme und Mechanik.