Kubikwurzel im Code
Unicode-Escapes, HTML-Entities, LaTeX — und die tatsächlichen Funktionen, die eine Kubikwurzel in JavaScript, Python, Excel und einem halben Dutzend anderer Sprachen berechnen, inklusive der Stellen, an denen sie bei negativen Zahlen von der Quadratwurzel abweicht.
Unicode-Escapes & HTML-Entities
∛ ist der Unicode-Codepunkt U+221B. In den meisten Sprachen können Sie es direkt über eine Escape-Sequenz in ein Stringliteral einfügen, statt das rohe Zeichen einzufügen. Anders als √ hat es keine benannte HTML-Entity — nur die numerische Form.
"\u221B" // ∛"\u221b" # ∛"\u221B" // ∛∛ (keine benannte Entity)content: "\221B";LaTeX
\sqrt erzeugt in LaTeX, MathJax und KaTeX ein korrektes Wurzelzeichen mit Balken über dem Argument — die 3 in eckigen Klammern macht daraus eine Kubikwurzel statt einer Quadratwurzel.
\sqrt[3]{x}\sqrt{x}\sqrt[n]{x}Eine Kubikwurzel im Code berechnen
Eine Escape-Sequenz bringt nur das Symbol auf die Seite — sie berechnet nichts. Hier ist die tatsächliche Funktion oder Formel für jede Sprache und ihr Ergebnis für 27 und -27, denn die Kubikwurzel ist einer der wenigen Fälle, in denen negative Eingaben real und wohldefiniert sind.
Math.cbrt(27);
// 3
Math.cbrt(-27);
// -3 — korrekt, anders als Math.pow27 ** (1/3)
# 3.0
(-27) ** (1/3)
# komplex! siehe Stolperfallen unten=SIGN(A1)*ABS(A1)^(1/3)Math.cbrt(27);
// 3.0
Math.cbrt(-27);
// -3.0 — korrekt#include <math.h>
cbrt(27);
// 3
cbrt(-27);
// -3 — korrektpow(27, 1/3);
// 3
pow(-27, 1/3);
// NAN — siehe Stolperfallen untenSELECT CBRT(27);
-- 3
SELECT CBRT(-27);
-- -3, korrektSELECT SIGN(27) * POWER(ABS(27), 1.0/3);
-- 3 (kein natives CBRT)import Foundation
cbrt(27.0)
// 3.0 — es gibt keine .cubeRoot()-Methodesign(-27) * abs(-27)^(1/3)
# -3 (kein eingebautes cbrt())Wissenswerte Stolperfallen
Negative Zahlen: Kubikwurzel und Quadratwurzel verhalten sich völlig unterschiedlich
Die Kubikwurzel einer negativen Zahl ist eine reelle Zahl (∛-27 = -3), anders als die Quadratwurzel einer negativen Zahl, die imaginär ist. Aber das naive x ** (1/3) weiß das in den meisten Sprachen nicht: JavaScripts Math.pow(-27, 1/3) gibt NaN zurück, und Pythons (-27) ** (1/3) gibt eine komplexe Zahl statt -3 zurück. Dedizierte Funktionen wie JavaScripts Math.cbrt(), Javas Math.cbrt() und Cs cbrt() machen es richtig; der allgemeine Potenzoperator meist nicht.
Pythons **-Operator gibt bei negativer Basis eine komplexe Zahl zurück
(-27) ** (1/3) in Python löst weder einen Fehler aus noch gibt es -3 zurück — es gibt eine komplexe Zahl zurück, etwa (1.5+2.598j), weil Pythons ** auf komplexe Arithmetik zurückgreift, sobald eine negative Basis mit einem nicht-ganzzahligen Exponenten potenziert wird. math.pow(-27, 1/3) verhält sich wieder anders: Es löst einen ValueError aus. Um ein reelles -3 zu erhalten, nutzen Sie math.copysign(abs(x) ** (1/3), x) oder schreiben Sie eine kleine Hilfsfunktion.
Excel und Google Sheets haben keine CBRT-Funktion
Es gibt in keiner der beiden Anwendungen eine eingebaute Kubikwurzel-Formel. =A1^(1/3) funktioniert bei positiven Zahlen, liefert aber bei negativen einen #ZAHL!-Fehler. Die Formel, die beides abdeckt, ist =SIGN(A1)*ABS(A1)^(1/3): Sie berechnet die Kubikwurzel des Absolutwerts und wendet danach das ursprüngliche Vorzeichen wieder an.
Swift hat keine .cubeRoot()-Methode
Double hat eine eingebaute .squareRoot()-Methode (25.0.squareRoot()), aber es gibt kein entsprechendes .cubeRoot() für die Kubikwurzel — Sie müssen Foundation importieren und die globale Funktion cbrt() aufrufen: cbrt(27.0).
SQL-Dialekte sind sich uneinig, ob CBRT existiert
PostgreSQL hat eine native CBRT()-Funktion, die negative Zahlen korrekt behandelt. MySQL und SQL Server haben überhaupt keine — Sie müssen sie aus POWER() und SIGN() zusammenbauen, denselben Umweg, den auch Tabellenkalkulationen brauchen.
Brauchen Sie nur das Symbol selbst?
Die Seite mit den Kopierformaten bietet ∛ zum Einfügen als reinen Text, Unicode-Codepunkt oder Tabellenkalkulationsformel — kein Code-Editor nötig.
Kopierformate öffnenHäufig gestellte Fragen
Was ist die Unicode-Escape-Sequenz für das Kubikwurzelzeichen im Code?
In JavaScript-, Java- und C#-Stringliteralen nutzen Sie \u221B (großes B). In Python nutzen Sie \u221b. Beide ergeben dasselbe Zeichen ∛, den Unicode-Codepunkt U+221B — einen Codepunkt nach dem Wurzelzeichen, U+221A.
Wie berechne ich eine Kubikwurzel in JavaScript?
Nutzen Sie Math.cbrt(x) — zum Beispiel gibt Math.cbrt(27) den Wert 3 zurück. Anders als Math.sqrt() behandelt es auch negative Zahlen korrekt: Math.cbrt(-27) gibt -3 zurück. Nutzen Sie nicht Math.pow(x, 1/3) als Ersatz — Math.pow(-27, 1/3) gibt NaN zurück, da es nicht weiß, dass Kubikwurzeln negativer Zahlen wohldefiniert sind.
Wie berechne ich eine Kubikwurzel in Python?
Bei positiven Zahlen funktionieren sowohl 27 ** (1/3) als auch math.pow(27, 1/3) und geben 3.0 zurück. Bei negativen Zahlen wird es kompliziert: (-27) ** (1/3) gibt eine komplexe Zahl statt -3 zurück, und math.pow(-27, 1/3) löst einen ValueError aus. Um für jedes Vorzeichen ein reelles Ergebnis zu erhalten, nutzen Sie math.copysign(abs(x) ** (1/3), x).
Wie lautet die Excel- oder Google-Sheets-Formel für die Kubikwurzel?
Keine der beiden Anwendungen hat eine eingebaute CBRT-Funktion. Nutzen Sie =SIGN(A1)*ABS(A1)^(1/3), das sowohl für positive als auch für negative Zahlen funktioniert. Ein einfaches =A1^(1/3) funktioniert bei positiven Eingaben, liefert aber bei negativen einen #ZAHL!-Fehler.
Was ist der LaTeX-Befehl für eine Kubikwurzel?
\sqrt[3]{x} erzeugt ein Wurzelzeichen mit einer kleinen 3 an der Indexposition und einem Balken über x. Lässt man die Zahl in eckigen Klammern weg, erzeugt \sqrt{x} stattdessen eine einfache Quadratwurzel. Funktioniert in LaTeX, MathJax und KaTeX.
Warum gibt Math.pow(-27, 1/3) NaN statt -3 zurück?
Math.pow() (und das Äquivalent in den meisten C-ähnlichen Sprachen) implementiert Potenzieren allgemein über Logarithmen, die für negative Basen nicht definiert sind — daher gibt es NaN zurück, statt zu erkennen, dass dieser spezielle Fall, eine reelle Kubikwurzel, eine wohldefinierte Antwort hat. Dedizierte Kubikwurzel-Funktionen wie Math.cbrt(), Javas Math.cbrt() und Cs cbrt() sind separat implementiert und behandeln negative Eingaben korrekt.