Perniziöse Zahl anhand gesetzter Bits prüfen
Zählen Sie die Einsen einer Zahl im Binärsystem und sehen Sie, ob diese Anzahl prim ist: 13 ist binär 1101, mit 3 Einsen, also perniziös. Zweierpotenzen haben nur eine Eins und sind es nie. 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
- 13
- Binär
- 1101
- Anzahl der Einsen
- 3
Eine perniziöse Zahl ist eine positive Ganzzahl, deren Binärdarstellung eine Primzahl von gesetzten Bits enthält. Dieses Prüfwerkzeug wandelt Ihre Dezimaleingabe exakt in die Basis zwei um, zählt die Einsen, prüft diese kleine Anzahl auf Primzahleigenschaft und gibt alle Zwischenergebnisse samt eindeutiger Einstufung zurück. Es eignet sich für Aufgaben aus der Zahlentheorie, Folgenuntersuchungen, Programmtests und Datenvalidierung. Werte unter eins werden abgelehnt, damit keine mehrdeutige Klassifikation entsteht.
Wann eine Zahl perniziös ist
Die Definition umfasst zwei genaue Schritte. Schreiben Sie zunächst die positive Ganzzahl n ohne führende Nullen zur Basis zwei. Zählen Sie anschließend, wie viele Stellen dieser Darstellung Einsen sind; diese Größe heißt auch Hamming-Gewicht.
Genau dann ist n perniziös, wenn die Anzahl prim ist. Dreizehn wird beispielsweise binär als 1101 geschrieben. Die Darstellung enthält drei Einsen, und da drei prim ist, ist dreizehn perniziös.
Fünfzehn lautet 1111 und enthält vier Einsen; vier ist zusammengesetzt, deshalb ist fünfzehn nicht perniziös. Zweierpotenzen wie acht besitzen nur ein gesetztes Bit. Weil eins keine Primzahl ist, sind sie nicht perniziös.
Beide booleschen Felder stimmen bewusst überein: Das erste benennt die mathematische Prüfung, das zweite liefert die direkte Klassifikation. Zum Definitionsbereich gehören ausschließlich positive Ganzzahlen; null und negative Werte führen zu einem Validierungsfehler statt zu einem irreführenden Ergebnis.
Sinnvolle Einsatzgebiete
Perniziöse Zahlen verbinden Ganzzahlarithmetik, Binärdarstellung, Kombinatorik und Primzahlen auf anschauliche Weise. Im Unterricht bestätigt das Werkzeug von Hand vorgenommene Umwandlungen und zeigt genügend Zwischenschritte, um Abweichungen zu finden. Forschende und Zahlenfans können Kandidatenlisten filtern, bevor sie Abstände, Reste oder Überschneidungen mit anderen Folgen untersuchen.
Datenteams können außerdem Binärdarstellung und Bitanzahl eines anderen Systems mit diesem deterministischen Ergebnis vergleichen. Es behauptet auch nicht, n selbst sei prim. Eine zusammengesetzte Zahl kann perniziös sein, wenn ihre Einsenanzahl prim ist, und eine Primzahl kann den Perniziositätstest verfehlen.
Die Trennung beider Fragen verhindert einen häufigen Verständnisfehler.
Anwendungsfälle
Zahlentheorie-Aufgaben kontrollieren
Bestätigen Sie Binärumwandlung, Einsenanzahl und perniziöse Klassifikation in einer Antwort.
Eine Popcount-Funktion testen
Nutzen Sie deterministische Ausgaben als Testfälle für Bitzähler oder Generatoren perniziöser Folgen.
Ganzzahlmengen filtern
Klassifizieren Sie positive Ganzzahlen vor der Analyse von Mustern, Abständen oder Schnittmengen.
Häufige Fragen
Was ist eine perniziöse Zahl?
Eine positive Ganzzahl, deren Binärdarstellung eine Primzahl von Bits mit dem Wert eins enthält.
Ist eins eine perniziöse Zahl?
Nein. Eins lautet binär 1, besitzt ein einziges gesetztes Bit, und eins ist keine Primzahl.
Muss eine perniziöse Zahl selbst prim sein?
Nein. Der Primzahltest gilt für die Anzahl der Einsen, nicht für n; auch zusammengesetzte Zahlen können bestehen.
Welche Eingaben werden abgelehnt?
Fehlende Werte, Werte unter eins, Brüche, Exponentialschreibweise, nichtdezimale Texte und unsichere Ganzzahlen.
Ist 13 eine perniziöse Zahl?
Ja. Binär wird 13 als 1101 geschrieben und enthält drei Einsen. Drei ist prim, also ist 13 perniziös. Das Ergebnis zeigt Binärform und Anzahl, damit Sie es von Hand nachprüfen können.
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/pernicious-number \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":13}'const res = await fetch("https://api.kit.forhosting.com/numth/pernicious-number", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 13
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/pernicious-number",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 13
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/pernicious-number", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":13}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":13}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/pernicious-number", 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": 13
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.pernicious_number",
"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
Wann eine Zahl perniziös ist
Die Antwort zeigt binary, one_count, one_count_is_prime und pernicious, sodass Sie die Umwandlung und jeden Rechenschritt kontrollieren können und nicht nur einen Wahrheitswert erhalten.
Eingabe übermitteln und Ergebnis lesen
Ein führendes Pluszeichen ist in einer Zeichenfolge zulässig, Dezimalpunkte, Exponentialschreibweise, Hexadezimalpräfixe, Kommas und innere Leerzeichen dagegen nicht. Nach der Validierung wandelt die Implementierung den Wert in BigInt um und erzeugt seine Darstellung zur Basis zwei. Dadurch bleibt jedes Bit auch nahe der Grenze exakt. Danach wird die Binärzeichenfolge einmal durchlaufen und für jede Eins der Zähler erhöht. Senden Sie n als exakte JSON-Ganzzahl oder als einfache dezimale Zeichenfolge. Der bevorzugte Feldname ist n; number und value werden als Aliasse für Formulare und vorhandene Daten akzeptiert. Der Bereich endet bei der größten sicheren JavaScript-Ganzzahl, damit die Eingabe ohne Rundung als JSON-Zahl zurückgegeben werden kann. Eine sichere Ganzzahl besitzt höchstens 53 signifikante Binärstellen, daher ist der Primzahltest sehr klein: Anzahlen unter zwei werden verworfen, zwei wird gesondert behandelt, gerade Werte werden ausgeschlossen und ungerade Teiler nur bis zur Quadratwurzel getestet. binary zeigt die Umwandlung, one_count die Anzahl und pernicious das Endergebnis. Ohne Netzwerk, Zufall, Uhrzeit oder veränderlichen Zustand liefert dieselbe Eingabe stets dasselbe JSON.
Sinnvolle Einsatzgebiete
In Programmieraufgaben dient das stabile JSON als Referenz für Tests von Popcount-Funktionen, Ganzzahlparsern oder Folgengeneratoren. Jede erfolgreiche API-Anfrage kostet $0.002; die interaktive Browserausführung ist kostenlos. Das Werkzeug klassifiziert pro Anfrage genau eine Ganzzahl und erzeugt weder unbegrenzte Bereiche noch Folgen, wodurch Laufzeit und Abrechnung vorhersehbar bleiben.
Technische Fragen
Was kostet die API?
Jede erfolgreiche API-Anfrage kostet $0.002. Die interaktive Browserversion ist kostenlos.