Perfect Number Checker
Verifica si un número es perfecto, deficiente o abundante; encuentra divisores propios y sumas de divisores.
Encontrar Números Perfectos
Números Perfectos Conocidos
Acerca de esta herramienta
Los números perfectos representan un fenómeno matemático raro donde un entero positivo es igual a la suma de sus divisores propios—una propiedad tan elegante que los antiguos matemáticos la consideraban sagrada. Estos números están profundamente conectados con el estudio de la teoría de números, la factorización prima y la belleza matemática, siendo mucho más que simples curiosidades. Los números perfectos han cautivado la imaginación de matemáticos durante más de dos mil años, y su misterio continúa hoy con solo 51 ejemplos conocidos a pesar de siglos de búsqueda.
Usa este verificador para explorar la clasificación de cualquier número entero: ¿es perfecto, abundante (con suma de divisores superior a sí mismo) o deficiente (con suma de divisores inferior)? La herramienta calcula instantáneamente todos los divisores propios y su suma, proporcionando transparencia completa sobre la estructura del número. Esto es invaluable para estudiantes que aprenden propiedades de divisibilidad, matemáticos que investigan patrones número-teóricos, investigadores que trabajan con algoritmos de números primos de Mersenne, o cualquiera curioso sobre la estructura aritmética oculta dentro de los números.
Curiosamente, todos los números perfectos conocidos son pares y siguen la fórmula elegante de Euler: 2^(p−1) × (2^p − 1) donde (2^p − 1) es un número primo de Mersenne. La búsqueda de nuevos números perfectos es equivalente a descubrir nuevos números primos de Mersenne—una búsqueda que conecta las matemáticas recreativas con la investigación computacional de vanguardia a través de proyectos como GIMPS. Ya sea que estés verificando una conjetura, enseñando propiedades de divisores o simplemente maravillándote ante la estructura matemática, esta herramienta transforma la teoría de números abstracta en resultados tangibles y verificables.
Preguntas Frecuentes
Implementación de Código
def get_proper_divisors(n: int) -> list[int]:
"""Get all proper divisors of n (excluding n itself)."""
if n <= 1:
return []
divisors = [1]
i = 2
while i * i <= n:
if n % i == 0:
divisors.append(i)
if i != n // i:
divisors.append(n // i)
i += 1
return sorted(divisors)
def check_perfect(n: int) -> dict:
"""Check if n is perfect, deficient, or abundant."""
if n <= 0:
return {"error": "Must be positive"}
divisors = get_proper_divisors(n)
divisor_sum = sum(divisors)
if divisor_sum == n:
classification = "perfect"
elif divisor_sum < n:
classification = "deficient"
else:
classification = "abundant"
return {
"number": n,
"divisors": divisors,
"divisor_sum": divisor_sum,
"is_perfect": divisor_sum == n,
"classification": classification,
"difference": n - divisor_sum
}
# Known perfect numbers
perfect_numbers = [6, 28, 496, 8128, 33550336]
for p in perfect_numbers:
r = check_perfect(p)
print(f"{p}: {r['classification']} (divisors sum = {r['divisor_sum']})")
print(f" Divisors: {r['divisors']}")
# Find abundant numbers up to 100
print("\nAbundant numbers up to 100:")
abundant = [n for n in range(2, 101) if check_perfect(n)["classification"] == "abundant"]
print(abundant)Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.