Narcissistic Number Checker
Vérifier si un nombre est narcissique (nombre d'Armstrong) et trouver tous les nombres narcissiques jusqu'à une limite donnée.
Trouver tous les nombres narcissiques jusqu'à
Qu'est-ce qu'un nombre narcissique ?
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.
À propos de cet outil
Un nombre narcissique (également appelé nombre d'Armstrong) est un nombre qui égale la somme de ses propres chiffres chacun élevé à la puissance du nombre de chiffres. Par exemple, 153 est narcissique car 1³ + 5³ + 3³ = 153. Ces nombres sont des curiosités mathématiques intrigantes qui apparaissent rarement dans le système numérique, les rendant amusants à explorer et à comprendre.
Pour utiliser ce vérificateur, il suffit d'entrer n'importe quel entier positif et l'outil déterminera instantanément s'il est narcissique. Le calcul est effectué entièrement dans votre navigateur, il n'est donc pas nécessaire de créer un compte ou de vous inquiéter de votre confidentialité. Il fonctionne avec les petits nombres comme 9 et les grands nombres également, vous aidant à vérifier rapidement les propriétés mathématiques.
Les nombres narcissiques sont appréciés par les passionnés de mathématiques, les étudiants apprenant la théorie des nombres et les programmeurs explorant les mathématiques computationnelles. La liste complète des nombres narcissiques est finie et bien documentée, ce qui rend cet outil utile pour la vérification et l'exploration éducative des modèles mathématiques.
Questions Fréquentes
Implémentation du Code
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.