2026. június 16., kedd

Tökéletes számok 100.000-ig

Tökéletes számok 100.000-ig
---------------------------
import math

def is_perfect_number(n):
    if n < 1:
        return False
    
    divisors_sum = 0
    limit = int(math.sqrt(n))
    
    for i in range(1, limit + 1):
        if n % i == 0:
            divisors_sum += i
            # Ha az osztópár nem önmaga és nem a négyzetgyök
            if i != 1 and i != n // i:
                divisors_sum += (n // i)
                
    return divisors_sum == n

print("Tökéletes számok 1 000 000-ig:")
for num in range(1, 10000):
    if is_perfect_number(num):
        print(num)
-----------
Tökéletes számok 100.000-ig:
1
6
28
496
8128

Nincsenek megjegyzések:

Megjegyzés küldése