Zum Inhalt springen
🛠️ToolsShed

Narcissistic Number Checker

Überprüfe, ob eine Zahl narzissistisch (Armstrong-Zahl) ist und finde alle narzissistischen Zahlen bis zu einer Grenze.

Alle narzissistischen Zahlen bis finden

Was ist eine narzisstische Zahl?

A narcissistic number (Armstrong number) equals the sum of its digits each raised to the power of the digit count. Example: 153 = 1^3 + 5^3 + 3^3 = 153.

Über dieses Tool

Eine narzisstische Zahl (auch Armstrong-Zahl genannt) ist eine Zahl, die gleich der Summe ihrer eigenen Ziffern ist, die jeweils zur Potenz der Anzahl der Ziffern erhoben werden. Zum Beispiel ist 153 eine narzisstische Zahl, da 1³ + 5³ + 3³ = 153. Diese Zahlen sind mathematisch faszinierende Besonderheiten, die im Zahlensystem selten vorkommen und daher unterhaltsam zu erkunden und zu verstehen sind.

Um diesen Checker zu verwenden, geben Sie einfach eine beliebige positive Ganzzahl ein und das Tool bestimmt sofort, ob sie narzisstisch ist. Die Berechnung wird vollständig in Ihrem Browser durchgeführt, sodass Sie kein Konto erstellen müssen oder sich um Ihre Privatsphäre sorgen brauchen. Es funktioniert mit kleinen Zahlen wie 9 und auch mit großen Zahlen und hilft Ihnen, mathematische Eigenschaften schnell zu überprüfen.

Narzisstische Zahlen werden von Mathematikenthusiasten, Schülern, die Zahlentheorie erlernen, und Programmierern, die Computermathematik erforschen, geschätzt. Die vollständige Liste der narzisstischen Zahlen ist endlich und gut dokumentiert, was dieses Tool nützlich für die Verifikation und pädagogische Erkundung mathematischer Muster macht.

Häufig gestellte Fragen

Code-Implementierung

def is_narcissistic(n: int) -> bool:
    """Check if n is a narcissistic (Armstrong) number."""
    digits = str(n)
    power = len(digits)
    return sum(int(d) ** power for d in digits) == n

def find_narcissistic(limit: int) -> list[int]:
    """Find all narcissistic numbers up to limit."""
    return [n for n in range(limit + 1) if is_narcissistic(n)]

# Check specific numbers
for n in [153, 370, 371, 407, 1634, 9474]:
    digits = [int(d) for d in str(n)]
    power = len(str(n))
    breakdown = " + ".join(f"{d}^{power}" for d in digits)
    result = sum(d ** power for d in digits)
    print(f"{n}: {breakdown} = {result} {'✓' if result == n else '✗'}")

# Find all up to 10000
print("\nAll narcissistic numbers up to 10000:")
print(find_narcissistic(10000))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.