Balancierte Ternärzahlen mit -1, 0 und 1 umrechnen
20 lautet im balancierten Ternärsystem 1 −1 1 −1: drei hoch drei, minus drei zum Quadrat, plus drei, minus eins. Geben Sie eine beliebige ganze Zahl ein, auch negativ, und erhalten Sie die Darstellung mit vorzeichenbehafteten Ziffern, klar getrennt. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- N
- 20
- Balanciertes Ternärsystem
- 1 -1 1 -1
- Ziffern
- 1, -1, 1, -1
Der Umrechner für balancierte Ternärzahlen stellt eine Ganzzahl zur Basis drei mit den Ziffern minus eins, null und eins dar. Geben Sie eine positive, negative oder ganzzahlige Null ein. Sie erhalten eine gut lesbare, durch Leerzeichen getrennte Darstellung und zusätzlich ein numerisches Ziffernarray. Die Abstände machen jede Ziffer -1 beim Kopieren in Notizen, Programmcode oder Berechnungen eindeutig. Die Umrechnung ist exakt, deterministisch und verwendet ausschließlich Ganzzahlarithmetik. Damit eignet sie sich zum Lernen vorzeichenbehafteter Zahlensysteme, zum Prüfen von Aufgaben und zum Erstellen kleiner Testvektoren, ohne wiederholt von Hand dividieren zu müssen.
Was eine balancierte Ternärzahl ausdrückt
Das gewöhnliche Ternärsystem verwendet die Ziffern null, eins und zwei. Jede Stelle steht dabei für eine Potenz von drei. Das balancierte Ternärsystem ersetzt die Zwei durch minus eins und arbeitet folglich mit -1, 0 und 1.
Jede Ziffer wird weiterhin mit der Dreierpotenz ihrer Stelle multipliziert, negative Ziffern ziehen diesen Stellenwert jedoch ab. Die angezeigte Folge beginnt wie bei der vertrauten Dezimalschreibweise mit der höchsten Potenz und endet bei der Einerstelle. Da das Token -1 genau eine Stelle belegt, trennt der Umrechner die Ziffern durch Leerzeichen.
So entsteht keine zusammengedrängte Zeichenfolge, die missverstanden werden könnte. Das Ziffernarray enthält dieselbe Information in einer Form, die Programme unmittelbar verarbeiten können. Jede Ganzzahl besitzt eine endliche und eindeutige balancierte Ternärdarstellung, sofern führende Nullen entfallen.
Positive und negative Eingaben benötigen deshalb kein separates Vorzeichen: Die Vorzeichen sind bereits Teil der einzelnen Ziffern. Dadurch ist die Darstellung um null symmetrisch und ein Wert lässt sich besonders leicht mit seinem Gegenwert vergleichen.
So arbeitet der Umrechnungsalgorithmus
Der Umrechner teilt die aktuelle Ganzzahl wiederholt durch drei und untersucht jeweils den Rest. Ein Rest von null oder eins ist bereits eine zulässige balancierte Ziffer und wird direkt übernommen. Ein Rest von zwei wird durch -1 ersetzt und ein Übertrag von eins zur nächsten Stelle addiert, denn zwei entspricht minus eins zuzüglich einer Dreiergruppe.
JavaScript kann bei negativen Dividenden negative Reste liefern. Deshalb wird auch der gespiegelte Fall behandelt: Ein Rest von -2 wird zu 1 und der nächste Quotient um eins vermindert. Die Ziffern entstehen von der Einerstelle aufwärts und werden am Ende für die übliche Leserichtung umgekehrt.
Die Schleife endet erst, wenn der angepasste Quotient null erreicht. Das Verfahren nutzt weder Näherungen noch Netzwerkdienste, Zufallswerte oder eine Uhr. Ihre Ablehnung verhindert eine scheinbar plausible, tatsächlich aber falsche Ziffernfolge.
Ergebnis lesen, prüfen und weiterverwenden
Zur Kontrolle beginnen Sie bei der Ziffer ganz rechts mit drei hoch null. Multiplizieren Sie jede Ziffer mit der Dreierpotenz ihrer Position und addieren Sie anschließend alle Terme samt Vorzeichen. Die Summe muss wieder die ursprüngliche Ganzzahl ergeben.
Der ursprüngliche Wert `n` wird ebenfalls ausgegeben, damit Protokolle und Stapel ohne zusätzlichen Kontext verständlich bleiben. Null ist der einzige besondere Darstellungsfall und liefert eine einzelne Nullziffer statt einer leeren Folge. Nutzen Sie das Browserwerkzeug zum schnellen Ausprobieren, für Unterrichtsaufgaben oder zur Kontrolle einer einzelnen Rechnung.
Anwendungsfälle
Aufgaben zu Zahlensystemen prüfen
Wandeln Sie eine vorgegebene Dezimalzahl um und vergleichen Sie die vorzeichenbehafteten Ziffern mit einer handgerechneten Lösung durch fortgesetzte Division.
Deterministische Testvektoren erzeugen
Erstellen Sie exakte Arrays balancierter Ternärziffern für Unit-Tests von Rechen-, Codierungs- oder Lernsoftware.
Symmetrische Darstellungen untersuchen
Vergleichen Sie positive und negative Ganzzahlen und erkennen Sie, wie vorzeichenbehaftete Ziffern die Negation ohne separates Präfix ausdrücken.
Häufige Fragen
Welche Ziffern verwendet das balancierte Ternärsystem?
Es verwendet -1, 0 und 1. Jede Stelle besitzt einen Wert, der einer Potenz von drei entspricht.
Warum werden die Ziffern durch Leerzeichen getrennt?
Die Abstände zeigen eindeutig, dass -1 eine einzelne Ziffer ist, und verhindern eine Verwechslung des Minuszeichens mit dem Vorzeichen der gesamten Zahl.
Kann der Umrechner negative Ganzzahlen verarbeiten?
Ja. Negative Werte werden unmittelbar mit vorzeichenbehafteten Ziffern dargestellt; ein zusätzliches führendes Vorzeichen ist nicht nötig.
Wie prüfe ich ein Ergebnis im balancierten Ternärsystem von Hand?
Beginnen Sie bei der rechten Ziffer, der Einerstelle, multiplizieren Sie jede Ziffer mit ihrer Dreierpotenz und addieren Sie die Terme mit Vorzeichen. Bei 1 −1 1 −1 ergibt das drei hoch drei minus drei zum Quadrat plus drei minus eins, also 20.
Worin unterscheidet es sich vom gewöhnlichen Dreiersystem?
Das gewöhnliche Dreiersystem nutzt die Ziffern 0, 1 und 2; das balancierte ersetzt die 2 durch −1 und überträgt eins auf die nächste Stelle. So steckt das Vorzeichen in den Ziffern, ein eigenes Minuszeichen ist nicht nötig.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/numth/balanced-ternary \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":20}'const res = await fetch("https://api.kit.forhosting.com/numth/balanced-ternary", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/balanced-ternary",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/balanced-ternary", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/balanced-ternary", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"n": 20
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.balanced_ternary",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
So arbeitet der Umrechnungsalgorithmus
Die Eingabe muss eine sichere Ganzzahl sein, weil größere JSON-Zahlen schon vor Beginn der Umrechnung Genauigkeit verloren haben können.
Ergebnis lesen, prüfen und weiterverwenden
Das Feld `balanced_ternary` ist für Menschen gedacht: Seine Tokens sind durch genau ein Leerzeichen getrennt und jedes Token lautet exakt -1, 0 oder 1. Das Feld `digits` richtet sich an Software und enthält dieselben Werte als JSON-Ganzzahlen, von der höchstwertigen bis zur niedrigstwertigen Ziffer. Dezimalwerte, numerische Zeichenketten, Unendlichkeiten und Ganzzahlen außerhalb des sicheren Bereichs führen zu `invalid_input`, statt stillschweigend gerundet oder umgewandelt zu werden.
Technische Fragen
Warum werden sehr große Ganzzahlen abgelehnt?
JSON-Zahlen außerhalb des sicheren JavaScript-Bereichs können bereits vor der Umrechnung gerundet sein. Die Ablehnung schützt die Exaktheit des Ergebnisses.
Was kostet eine Umrechnung über die API?
Jede API-Anfrage kostet $0.002. Auf dieser Seite können Sie den Umrechner außerdem kostenlos im Browser ausführen.