Höhere Mathematik: Möglichkeiten und Grenzen
Diese Seite fasst die höhere Mathematik in Varlig Calc zusammen: Listen, Vektoren und Matrizen, komplexe Zahlen, Summen und Produkte, das Lösen von Gleichungen und Analysis. Für jeden Bereich ist aufgeführt, was die Funktionen tun, was sie akzeptieren, wie genau die Ergebnisse sind und wo die Grenzen liegen. Hier prüfst du die Details, wenn dich ein Ergebnis überrascht.
Einführungen mit mehr Beispielen findest du im Handbuch: Listen und Statistik, Vektoren und Matrizen, Komplexe Zahlen und Summen, Gleichungen lösen und Analysis.
Auf einen Blick
| Thema | Beispiel | Ergebnis |
|---|---|---|
| Liste | [1, 2+3, 4*2] |
[1, 5, 8] |
| Element einer Liste | [10, 20, 30][1] |
20 |
| Element einer verschachtelten Liste | [[1,2],[3,4]][1][0] |
3 |
| Summe von Größen | sum([1 kg, 500 g]) |
1.5 kg |
| Statistik | average([1,2,3]), median([5,1,3]) |
2, 3 |
| Bereich, abwärts zählend | range(5, 1, -2) |
[5, 3, 1] |
| Listen addieren | [1,2] + [3,4] |
[4, 6] |
| Matrixprodukt | [[1,2],[3,4]] * [[1,0],[0,1]] |
[[1, 2], [3, 4]] |
| Inverse | inverse([[1,2],[3,4]]) |
[[-2, 1], [1.5, -0.5]] |
| Determinante | det([[1,2],[3,4]]) |
-2 |
| Transponierte | transpose([[1,2],[3,4]]) |
[[1, 3], [2, 4]] |
| Lineares Gleichungssystem | solve_system([[2,1],[1,2]], [34,29]) |
[13, 8] |
| Rechnen mit komplexen Zahlen | (2+3i) * (2-3i) |
13 |
| Komplexe Quadratwurzel | sqrt(complex(-4,0)) |
2i |
| Häufigster Wert | mode([1,2,2,3]) |
2 |
| Perzentil | percentile([1,2,3,4],25) |
1.75 |
| Standardabweichung der Grundgesamtheit | population_stddev([1,2,3,4]) |
1.1180339887 |
| Summe über einen Bereich | sum(k^2, k, 1, 10) |
385 |
| Produkt über einen Bereich | product(k, k, 1, 5) |
120 |
| Gleichung exakt lösen | solve(x^2 - 5x + 6 = 0) |
[2, 3] |
| Gleichung im Bereich lösen | solve(x^2 = 4, x, 0, 3) |
2 |
| Symbolische Ableitung | differentiate(sin(x), x) |
cos(x) |
| Ableitung an einer Stelle | derivative(x^3, x, 2) |
12 |
| Bestimmtes Integral | integrate(x^2, x, 0, 3) |
9 |
Listen, Matrizen und komplexe Zahlen sind ganz normale Werte. Du kannst ihnen Namen geben und sie an eigene Funktionen übergeben, und sie werden neu berechnet, wenn du eine frühere Zeile bearbeitest.
Quadrate(n) = sum(k^2, k, 1, n)Quadrate(3) ergibt 14erstes(Liste) = Liste[0]erstes([10, 20]) ergibt 10Wurzel(y) = solve(x^2 = y, x, 0, 10)Wurzel(9) ergibt 3Was der Rechner garantiert
Hinter allem auf dieser Seite steht eine Regel: Eine Rechnung hat entweder ein Ergebnis, für das Varlig geradesteht, oder sie zeigt einen Fehler mit der Begründung. Sie fällt nie von einer exakten Rechnung auf eine plausibel aussehende Zahl zurück.
Wie exakt ein Ergebnis ist
| Gerechnet als | Was das umfasst |
|---|---|
| Exakte Brüche | Koeffizienten einer Gleichung und die Lösung einer linearen Gleichung; die Lösungen einer quadratischen Gleichung, deren Diskriminante eine Quadratzahl ist; bei Matrizen +, -, *, die Multiplikation mit einer Zahl, transpose, det, inverse, rank und solve_system; median, mode, modes, percentile, quartile und alle drei Varianzen |
| Dezimale Quadratwurzel | stddev, sample_stddev, population_stddev und die Lösungen jeder anderen quadratischen Gleichung |
| Binäre Gleitkommazahlen | eigenvalues, qr, lu, svd, integrate und das solve mit vier Argumenten |
Exakt heißt exakt: Zwischen dem Lesen der Zeile und dem Anzeigen des Ergebnisses wird nichts gerundet, ein exaktes Ergebnis übersteht also das Benennen, Speichern und Weiterverwenden. Ein Näherungswert ist dieselbe begrenzte Dezimalzahl, die sqrt zurückgibt. Er ist nicht korrekt auf seine letzte angezeigte Stelle gerundet, deshalb ist der Vergleich zweier Näherungswerte mit == kein verlässlicher Test — solve(x^2 - 2 = 0) und sqrt(2) zeigen beide 1.4142135624 und sind nicht gleich.
Ein Ergebnis mischt nie beides. Bei einer quadratischen Gleichung, deren Diskriminante keine Quadratzahl ist, sind beide Lösungen Näherungswerte.
Einheiten
| Operation | Regel |
|---|---|
| Matrizen | Nur reine Zahlen; Einheiten, Geld und komplexe Einträge werden abgelehnt |
| Gleichungen | Nur reine Zahlen, auf beiden Seiten |
median, mode, modes, percentile, quartile, stddev, population_stddev |
Eine einheitliche Dimension oder reine Zahlen. Kompatible Einheiten werden in der Einheit des ersten Werts gelesen, und das Ergebnis behält sie |
variance, sample_variance, population_variance |
Nur reine Zahlen: Eine Varianz quadriert ihre Beobachtungen, und keine Einheit übersteht das |
Werte mit Einheiten und Werte ohne zu mischen ist ein Fehler, statt dass die nackten Zahlen stillschweigend gelesen werden — mit einer altbekannten Ausnahme: Eine nackte 0 zählt in der Einheit der anderen.
Was abgelehnt wird
Nichts davon liefert eine Zahl oder einen Satz. Jedes ist ein Fehler, der benennt, was nicht geht, und — wo es eine gibt — die unterstützte Schreibweise dazu:
- Eine Polynomgleichung über Grad 2, eine nicht polynomiale Gleichung, die Unbekannte in einem Nenner oder einem Exponenten, zwei Namen, die beide keinen Wert haben, eine Gleichung ohne Unbekannte oder eine mit Einheiten oder Geld. Jedes verweist auf das numerische
solvemit vier Argumenten. - Eine Gleichung ohne reelle Lösung, statt einer komplexen, und eine Gleichung, die jeder Wert erfüllt, statt eines einzelnen Werts.
- Eine Matrixoperation mit unpassenden oder nicht quadratischen Dimensionen, die Inverse einer singulären Matrix oder ein Eintrag, der keine reine Zahl ist.
modeohne Wiederholung oder mit mehreren gleich häufigen Werten, ein Perzentil außerhalb von 0 bis 100, ein Quartil außerhalb von 0 bis 4 und jede Statistik außersum,productundcountüber einer leeren Liste.
Nirgends unterstützt, und zwar mit Absicht: symbolisches Umformen über das Sammeln von Polynomkoeffizienten hinaus, nicht lineare Gleichungssysteme, komplexe Lösungen einer reellen Gleichung, Matrizen mit Einheiten oder Geld, symbolisches Integrieren und das Zeichnen von Graphen.
Die Meldungen selbst sind unter Fehler, Diagnosen und Grenzen aufgeführt.
Listen und Mathefunktionen schreiben
- Kommas trennen Elemente und Argumente. Ein Komma mit einem Leerzeichen danach trennt immer, und ein Komma, auf das genau drei Ziffern folgen, gruppiert Tausender.
[1,200, 1,800]hat also zwei Elemente. Ohne Leerzeichen trennt jedes Komma, wie in[12,-51,4]. Wo sich Kommas auf beide Arten lesen lassen, wie in[1,234], zeigt die Fehlermeldung beide möglichen Schreibweisen. Für Nachkommastellen verwendest du einen Dezimalpunkt. - Matrizen sind Listen von Zeilen, etwa
[[1,2],[3,4]]. Eine Kurzschreibweise mit Semikolon wie[1,2;3,4]gibt es nicht. - Indizes beginnen bei 0 und müssen ganze Zahlen ab 0 sein. Ein Index hinter dem Ende der Liste ist ein Fehler; er springt nie an den Anfang zurück und wird auch nicht passend gekürzt.
- Die Anzahl der Argumente wird geprüft.
sqrt(4,9)ist ein Fehler, statt dass Varlig rät.
Listen und Statistik
Diese Funktionen akzeptieren eine Liste: length oder count, sum, product, average oder mean, median, min, max, mode und modes, percentile und quartile sowie die Streuungsfunktionen variance, sample_variance, population_variance, stddev, sample_stddev und population_stddev.
modeantwortet nur, wenn genau ein Wert der häufigste ist; ein Gleichstand und eine Liste ohne Wiederholung sind beides Fehler, diemodes,medianoderaveragenennen.modesgibt alle häufigsten Werte zurück.percentile(list, rank)nimmt einen Rang von 0 bis 100 und interpoliert linear zwischen den beiden nächstgelegenen Rängen, nach der inklusiven Definition: Das 50. Perzentil ist der Median, das 0. und das 100. sind der kleinste und der größte Wert.quartile(list, k)nimmt ein ganzzahligeskvon 0 bis 4 und istpercentile(list, 25k).varianceundstddevsind die Stichprobenformen, teilen durchn - 1und brauchen zwei Werte.population_varianceundpopulation_stddevteilen durchnund brauchen einen.sample_varianceundsample_stddevsind längere Namen für die kurzen.- Eine leere Liste hat die
sum0, dasproduct1 und dencount0. Andere Statistiken einer leeren Liste sind Fehler. - Zwei gleich lange Listen werden elementweise addiert und subtrahiert. Du kannst eine Liste mit einer Zahl multiplizieren oder durch eine Zahl dividieren und zwei Listen mit
==vergleichen. range(start, end, step)schließt beide Enden ein. Die Schrittweite ist optional.dot(a, b)multipliziert zwei reelle Vektoren.
Ausgaben = [420, 385, 510, 460] ergibt [420, 385, 510, 460]sum(Ausgaben) ergibt 1,775average(Ausgaben) ergibt 443.75median(Ausgaben) ergibt 440Ausgaben[0] ergibt 420Ausgaben * 1.1 ergibt [462, 423.5, 561, 506]range(0, 1, 0.25) ergibt [0, 0.25, 0.5, 0.75, 1]Listen umformen
| Aufruf | Ergebnis | Wirkung |
|---|---|---|
sort([3,1,2]) |
[1, 2, 3] |
Sortiert Zahlen ohne Einheiten aufsteigend; gleiche Elemente behalten ihre Reihenfolge |
reverse([1,2,3]) |
[3, 2, 1] |
Kehrt jede Liste um |
unique([3,1,3,2]) |
[3, 1, 2] |
Behält das erste Vorkommen jedes Werts; Elemente müssen exakt übereinstimmen, auch in der Einheit |
slice([10,20,30,40], 1, 3) |
[20, 30] |
Nimmt Elemente vom Startindex bis ausschließlich zum Endindex |
map(x^2, x, [1,2,3]) |
[1, 4, 9] |
Berechnet den Ausdruck für jedes Element |
filter(x > 1, x, [1,2,3]) |
[2, 3] |
Behält die Elemente, für die die Bedingung wahr ist |
variance([1,2,3]) |
1 |
Exakte Stichprobenvarianz, geteilt durch die Anzahl minus eins |
slicebraucht ganze Zahlen mit 0 ≤ Start ≤ Ende ≤ Länge der Liste. Andere Grenzen sind Fehler.variancebraucht mindestens zwei Zahlen ohne Einheiten.mapundfiltererwarten zuerst den Ausdruck, dann den Namen für das jeweilige Element und dann die Liste. Der Name gilt nur innerhalb des Aufrufs und ändert keinen Namen, den du anderswo definiert hast. Der Ausdruck infiltermusstrueoderfalseergeben.
Vektoren und Matrizen
Vektoren sind flache Listen, Matrizen sind Listen von Zeilen. Matrizen müssen rechteckig sein, reelle Zahlen ohne Einheiten enthalten und 1 bis 32 Zeilen und Spalten haben.
| Funktion | Wirkung |
|---|---|
A * B |
Matrixprodukt; die Spaltenzahl von A muss der Zeilenzahl von B entsprechen |
transpose(A) |
Vertauscht Zeilen und Spalten |
shape(A) |
[Zeilen, Spalten] |
identity(n) |
Eine Einheitsmatrix der Größe n × n |
trace(A) |
Summe der Diagonale einer quadratischen Matrix |
det(A) |
Determinante einer quadratischen Matrix |
inverse(A) |
Inverse einer quadratischen Matrix; eine singuläre Matrix ist ein Fehler |
rank(A) |
Rang durch exakte Elimination, für jede rechteckige Matrix |
dot(a, b) |
Skalarprodukt zweier gleich langer Vektoren |
cross(a, b) |
Kreuzprodukt zweier Vektoren mit je drei Elementen |
solve_system(A, b) |
Löst A*x = b für eine quadratische Matrix A und einen flachen Vektor b |
eigenvalues(A) |
Eigenwerte einer reellen quadratischen Matrix, auch komplexe Paare, in keiner festen Reihenfolge |
qr(A) |
[Q, R], wobei Q*R ungefähr A ergibt |
lu(A) |
[P, L, U], wobei P*A ungefähr L*U ergibt; nur quadratische Matrizen |
svd(A) |
[U, s, Vt], wobei s eine flache Liste der Singulärwerte ist und A ungefähr U*diag(s)*Vt ergibt |
Exakte Ergebnisse. det, inverse, rank und solve_system rechnen mit exakten Brüchen. rank hat keine Rundungstoleranz. solve_system meldet bei einem singulären System einen Fehler und kann weder nichtlineare Systeme noch Systeme mit unendlich vielen Lösungen behandeln.
Näherungswerte. eigenvalues, qr, lu und svd verwenden Gleitkommazahlen und prüfen, ob ihre Ausgabe endlich ist. qr und svd akzeptieren rechteckige Matrizen und liefern die kompakten („dünnen“) Faktoren. Berechnungen von Eigenwerten und Singulärwertzerlegungen stoppen nach 10.000 Iterationen. Im angezeigten Ergebnis erscheint ein Eintrag, der neben dem größten Eintrag nur Rundungsrauschen ist, als 0; greifst du per Index darauf zu, erhältst du den gespeicherten Wert. Schlecht konditionierte Matrizen können an Genauigkeit verlieren, prüfe diese Ergebnisse also nicht mit ==.
# Zwei Erwachsenenkarten und eine Kinderkarte kosten 34; eine Erwachsenen- und zwei Kinderkarten kosten 29solve_system([[2,1],[1,2]], [34,29]) ergibt [13, 8]det([[2,1],[1,2]]) ergibt 3rank([[1,2],[2,4]]) ergibt 1Komplexe Zahlen
i ist die imaginäre Einheit, sofern du keinen Namen und keine eigene Einheit namens i definiert hast.
- Funktionen:
complex(real, imaginary),real,imag,conj,abs,arg(im Bogenmaß) undsqrt(die Hauptwurzel) akzeptieren alle komplexe Zahlen. - Exaktheit: Real- und Imaginärteil, Grundrechenarten und ganzzahlige Potenzen bleiben exakt. Allgemeine Wurzeln und
argsind Näherungswerte. - Reelle Ergebnisse: Heben sich die Imaginärteile auf, wie bei
(2+3i) * (2-3i), ist das Ergebnis eine normale reelle Zahl. Ein Wert, den du als komplexe Zahl schreibst, etwa-4 + 0iodercomplex(-4,0), bleibt bei Rechnungen und in Namen komplex, auch wenn er als-4angezeigt wird. - Quadratwurzeln und Logarithmen negativer Zahlen:
sqrt(-4),ln(-1)undlog(-100)bleiben bei den reellen Zahlen und zeigen einen Fehler zu imaginären Zahlen an, der die komplexe Schreibweise nennt, die du stattdessen verwenden kannst, etwasqrt(-4 + 0i). Diese Schreibweise odersqrt(complex(-4,0))ergibt2i. - Anzeige: Ein Anteil, der nur Rundungsrauschen der Gleitkommarechnung ist, wird als 0 angezeigt;
exp(i*pi)zeigt also-1. Der gespeicherte Wert behält seine Ziffern. - Vergleiche:
<und>funktionieren nur, wenn beide Imaginärteile null sind. - Weitere Funktionen:
sin,cos,tanund ihre Umkehrfunktionen, die Hyperbelfunktionen und ihre Umkehrfunktionen,exp,ln,logoderlog10,log2,cbrtsowie gebrochene oder komplexe Potenzen akzeptieren alle komplexe Zahlen. Sie verwenden Gleitkommazahlen und Hauptzweige. Der Logarithmus von null und jedes nicht endliche Ergebnis sind Fehler.
(2+3i) * (2-3i) ergibt 13abs(3+4i) ergibt 5sqrt(-4 + 0i) ergibt 2isqrt(complex(-4,0)) ergibt 2isqrt(-4) ergibt Error: imaginary number. For a complex answer, write sqrt(-4 + 0i)exp(i*pi) ergibt -1Summen und Produkte
sum(expression, name, from, to) addiert den Ausdruck für jede ganze Zahl von from bis to, beide Enden eingeschlossen. summation ist ein anderer Name dafür, und product multipliziert stattdessen.
- Der Name gilt nur innerhalb des Aufrufs. Er ändert keinen bereits definierten Namen, und die Zeile hängt auch nicht von einem solchen ab.
- Du kannst eine Summe oder ein Produkt in eine andere Summe oder ein anderes Produkt setzen.
- Ist
tokleiner alsfrom, ist der Bereich leer: Die Summe ist 0 und das Produkt 1. - Ein einzelner Aufruf kann höchstens 10.000 Terme haben.
sum(k^2, k, 1, 10) ergibt 385product(k, k, 1, 5) ergibt 120k = 7 ergibt 7sum(k, k, 1, 3) ergibt 6k ergibt 7Gleichungen lösen
solve(equation) liest eine Polynomgleichung vom Grad 1 oder 2 mit einer Unbekannten und rechnet ihre Lösungen aus. Die Unbekannte ist der eine Name in der Gleichung, der keinen Wert hat; ein Name, der einen hat, wird als sein Betrag gelesen, und die rechte Seite darf fehlen — dann wird der Ausdruck gleich null gesetzt.
- Eine lineare Gleichung antwortet mit der Zahl. Eine quadratische antwortet mit der Liste ihrer verschiedenen reellen Lösungen in aufsteigender Reihenfolge, eine doppelte Lösung ist also eine Liste mit einem Element. Die Form richtet sich nach dem geschriebenen Grad, nicht nach den gefundenen Lösungen.
- Die Koeffizienten und ihre Umformung sind exakt, und die Lösungen ebenfalls, wenn die Diskriminante eine Quadratzahl ist. Jede andere quadratische Gleichung liefert zwei dezimale Quadratwurzeln.
- Beide Seiten müssen reine Zahlen sein. Einheiten, Geld und komplexe Werte werden abgelehnt.
- Eine Gleichung ohne reelle Lösung liefert
Error: no real solutionstatt einer komplexen Lösung, und eine Gleichung, die jeder Wert erfüllt, sagt das, statt sich einen Wert herauszupicken. - Alles andere — Grad 3 und höher, eine nicht polynomiale Gleichung, die Unbekannte in einem Nenner oder einem Exponenten, ein zweiter Name ohne Wert — wird mit einer Meldung abgelehnt, die die Form mit vier Argumenten weiter unten nennt.
solve(2x + 6 = 10) ergibt 2solve(x^2 - 5x + 6 = 0) ergibt [2, 3]solve(x^2 - 2 = 0) ergibt [-1.4142135624, 1.4142135624]solve(x^2 + 1 = 0) ergibt Error: no real solutionsolve(expression, name, lower, upper) ist eine andere Funktion: Sie findet einen reellen Wert von name zwischen lower und upper, an dem der Ausdruck null ist. solve(left = right, name, lower, upper) findet die Stelle, an der beide Seiten gleich sind.
- Die Grenzen müssen endliche Zahlen sein, und
lowermuss kleiner alsuppersein. - Eine Nullstelle genau auf einer Grenze wird akzeptiert. Ansonsten muss der Ausdruck an einer Grenze positiv und an der anderen negativ sein und sollte dazwischen stetig sein.
- Die Suche halbiert das Intervall mit jedem Schritt. Sie ist erfolgreich, wenn der Ausdruck innerhalb von 128 Schritten bis auf
1e-10an null herankommt und das Intervall schmal genug ist. Ist der Ausdruck an einer geprüften Stelle nicht definiert oder kommt die Suche nicht zur Ruhe, zeigt die Zeile einen Fehler an. - Sie findet eine Nullstelle, nicht alle. Für lineare Gleichungssysteme verwendest du
solve_system.
solve(1500 + 12*x = 20*x, x, 0, 1000) ergibt 187.5solve(x^2 = 2, x, 0, 2) ergibt 1.4142135624Analysis
Symbolische Ableitungen
differentiate(expression, name), auch derivative(expression, name) geschrieben, liefert die Ableitung als Text.
- Sie verwendet Summen-, Produkt-, Quotienten-, Potenz- und Kettenregel für reelle Arithmetik ohne Einheiten sowie
sin,cos,tan,sinh,cosh,exp,lnundsqrt. - Andere Namen im Ausdruck werden als Konstanten behandelt, egal ob sie in der Notiz einen Wert haben:
differentiate(a*x^2, x)ergibt(a*(2*(x^(2-1)))). - Das Ergebnis wird nicht vereinfacht und ist auf 8192 Zeichen begrenzt.
- Andere Funktionen wie
abssind Fehler; verwende für sie eine Ableitung an einer Stelle. Dies ist kein vollständiges Computeralgebrasystem. - Die Ableitung hat dieselben Einschränkungen des Definitionsbereichs wie der ursprüngliche Ausdruck.
differentiate(sin(x), x) ergibt cos(x)differentiate(x^3, x) ergibt (3*(x^(3-1)))Ableitungen an einer Stelle
derivative(expression, name, point) oder differentiate mit drei Argumenten berechnet die Steigung an einer Stelle numerisch. Dazu werden verfeinerte zentrale Differenzenquotienten verwendet und mit einseitigen Schätzungen abgeglichen. Der Ausdruck kann eigene Funktionen verwenden, muss aber in der Nähe der Stelle glatt sein und reelle Zahlen ohne Einheiten verwenden. Kommt die Schätzung nicht zur Ruhe oder ist ein Stützwert nicht definiert, zeigt die Zeile einen Fehler an.
Da die numerischen Formen eine Zahl berechnen, braucht jeder Name außer der Variablen einen Wert. Das gilt für Ableitungen an einer Stelle, sum, product, solve und integrate; ein Name ohne Wert zeigt Unsupported: Unknown name: gefolgt vom Namen an.
derivative(x^3, x, 2) ergibt 12f(x) = x^2derivative(f(x), x, 3) ergibt 6differentiate(a*x^2, x) ergibt (a*(2*(x^(2-1))))derivative(a*x^2, x, 3) ergibt Unsupported: Unknown name: aBestimmte Integrale
integrate(expression, name, lower, upper) berechnet die Fläche unter dem Ausdruck zwischen zwei endlichen Grenzen.
- Vertauschte Grenzen ändern das Vorzeichen des Ergebnisses, und gleiche Grenzen ergeben null.
- Das Verfahren nutzt adaptive Gauß-Kronrod-Regeln mit 7 und 15 Stützstellen, die an ungleichmäßig verteilten Stellen abtasten. So lässt es sich von einer regelmäßigen Schwingung wie
cos(128*pi*x)nicht täuschen:integrate(cos(128*pi*x), x, 0, 1)ergibt etwa-1.3e-15, also null im Rahmen der Rundung. - Es strebt eine geschätzte Gesamtabweichung von höchstens dem
1e-9-Fachen der Größe des Ergebnisses an (oder1e-9bei Ergebnissen kleiner als 1). Es vergleicht mindestens zwei Detailstufen, berücksichtigt Rundungsfehler und verfeinert zuerst den Abschnitt mit der größten geschätzten Abweichung. - Es stoppt nach 2048 Verfeinerungen, 20 Unterteilungsebenen oder den 100.000 Schritten, die es sich mit anderer höherer Mathematik in der Zeile teilt. Das Erreichen einer Grenze oder ein nicht definierter Stützwert ist ein Fehler.
- Die Fehlerschätzung ist ein guter Anhaltspunkt, aber keine Garantie. Verwende glatte, endliche Ausdrücke. Ergebnisse für Ausdrücke mit Spitzen, Sprüngen oder schnellen Schwingungen können ungenau sein.
- Unbestimmte Integrale und unendliche Grenzen werden nicht unterstützt.
integrate(x^2, x, 0, 3) ergibt 9integrate(x^2, x, 3, 0) ergibt -9Argumente und Einheiten in Mathefunktionen
factorialist ein anderer Name fürfact, undtruncfürint.signliefert -1, 0 oder 1.atan2(y, x)liefert einen Winkel im Bogenmaß als einfache Zahl.- Das optionale zweite Argument von
round,floorundceilist eine Schrittweite, keine Anzahl von Nachkommastellen:round(17, 5)rundet auf das nächste Vielfache von 5. Wie du auf Nachkommastellen rundest, erfährst du unter Runden. - Logarithmen, Exponentialfunktionen und Hyperbelfunktionen akzeptieren keine Einheiten und keine Geldbeträge. Die normalen Winkelfunktionen akzeptieren Winkel wie
30°. - Quadrat- und Kubikwurzeln behalten Einheiten, wenn die Potenz glatt aufgeht, und Potenzen von Größen behalten ihre Einheiten. Temperaturen in Celsius oder Fahrenheit lassen sich weder quadrieren noch radizieren.
gcd(12, 18) ergibt 6round(17, 5) ergibt 15sin(30°) ergibt 0.5sqrt(9 m²) ergibt 3 m(2 kg)^2 ergibt 4 kg²Grenzen
Grenzen werden geprüft, bevor ein Ergebnis angezeigt wird:
- 1024 Elemente in einer Liste oder einem
range - Matrizen bis 32 × 32
- 10.000 Terme in einer
sumoder einemproduct - 16 Ebenen verschachtelter Listen und Funktionsaufrufe
- 100.000 Schritte, die sich die gesamte höhere Mathematik einer Zeile teilt, verschachtelte Aufrufe eingeschlossen
- 4096 Bit im Zähler oder Nenner eines Bruchs, wie überall in Varlig Calc
Wird eine Grenze erreicht, erscheint in dieser Zeile ein Fehler, und der Rest der Notiz funktioniert weiter. Eine Teilsumme, eine Inverse oder eine nicht konvergierte Nullstelle wird nie als Ergebnis ausgegeben. Alle Grenzen und Details zur Genauigkeit der Ergebnisse findest du unter Ergebnisse lesen: Anzeige und Genauigkeit.