π ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ Π² ΠΠΈΡΠΎΠ½Π΅? Π£Π·Π½Π°ΠΉΡΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±!
Π§ΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ Π² ΠΠΈΡΠΎΠ½Π΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
def find_sum_of_divisors(n):
sum_of_divisors = 0
for i in range(1, n+1):
if n % i == 0:
sum_of_divisors += i
return sum_of_divisors
# ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
number = 12
sum_of_divisors = find_sum_of_divisors(number)
print(f"Π‘ΡΠΌΠΌΠ° Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° {number} ΡΠ°Π²Π½Π° {sum_of_divisors}")
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ find_sum_of_divisors, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΈΡΠ»ΠΎ n ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΡΡΠΌΠΌΡ Π΅Π³ΠΎ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ Π΅ΠΉ ΡΠΈΡΠ»ΠΎ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ. Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° 12.
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ Π² ΠΏΠΈΡΠΎΠ½Π΅?
ΠΠ΄ΡΠ°Π²ΡΡΠ²ΡΠΉ, ΡΠ²Π°ΠΆΠ°Π΅ΠΌΡΠΉ ΡΠΈΡΠ°ΡΠ΅Π»Ρ! Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python.
ΠΠ΅ΡΠ΅Π΄ ΡΠ΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΠ°ΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π΄Π΅Π»ΠΈΡΠ΅Π»ΠΈ ΡΠΈΡΠ»Π°. ΠΠ΅Π»ΠΈΡΠ΅Π»ΠΈ - ΡΡΠΎ ΡΠΈΡΠ»Π°, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π΄Π΅Π»ΠΈΡΡΡ Π±Π΅Π· ΠΎΡΡΠ°ΡΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠΈΡΠ»Π° 12 Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠΌΠΈ Π±ΡΠ΄ΡΡ ΡΠΈΡΠ»Π°: 1, 2, 3, 4, 6 ΠΈ 12.
ΠΠ΅ΡΠΎΠ΄ 1: ΠΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ
ΠΠ΅ΡΠ²ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, - ΡΡΠΎ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ Π²ΡΠ΅Ρ ΡΠΈΡΠ΅Π» ΠΎΡ 1 Π΄ΠΎ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΎΠ½ΠΎ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΌ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°, ΠΈ Π΅ΡΠ»ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ, ΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π΅Π³ΠΎ ΠΊ ΡΡΠΌΠΌΠ΅ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ.
def sum_of_divisors(n):
divisor_sum = 0
for i in range(1, n+1):
if n % i == 0:
divisor_sum += i
return divisor_sum
Π ΡΡΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΈΠΊΠ» for
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° Π²ΡΠ΅Ρ
ΡΠΈΡΠ΅Π» ΠΎΡ 1 Π΄ΠΎ n
. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π΄Π΅Π»ΠΈΡΡΡ Π»ΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π½Π° ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π±Π΅Π· ΠΎΡΡΠ°ΡΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° %
. ΠΡΠ»ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ Π±Π΅Π· ΠΎΡΡΠ°ΡΠΊΠ°, ΡΠΎ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ΅ΠΊΡΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ ΠΊ ΡΡΠΌΠΌΠ΅ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΠ°Π±ΠΎΡΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΡΡΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° 12:
result = sum_of_divisors(12)
print(result)
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΈΡΠ»ΠΎ 28, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΌΠΌΠ° Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° 12 ΡΠ°Π²Π½Π° 1 + 2 + 3 + 4 + 6 + 12 = 28.
ΠΠ΅ΡΠΎΠ΄ 2: ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ . ΠΡΠ»ΠΈ ΠΌΡ ΡΠ°Π·Π»ΠΎΠΆΠΈΠΌ ΡΠΈΡΠ»ΠΎ Π½Π° ΠΏΡΠΎΡΡΡΠ΅ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»ΠΈ, ΡΠΎ ΡΡΠΌΠΌΠ° Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Π΅ΠΉ.
def sum_of_divisors(n):
divisor_sum = 1
i = 2
while i * i <= n:
count = 0
while n % i == 0:
count += 1
n //= i
divisor_sum *= (i ** (count + 1) - 1) // (i - 1)
i += 1
if n >= 2:
divisor_sum *= (n + 1)
return divisor_sum
Π ΡΡΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΡΠΎΡΡΡΡ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° ΠΈ ΡΠΎΡΠΌΡΠ»Ρ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΠ°Π±ΠΎΡΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΈΡΠ»Π° 12:
result = sum_of_divisors(12)
print(result)
ΠΠΆΠΈΠ΄Π°Π΅ΠΌΡΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΠΈΡΠ»ΠΎ 28.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π΄Π²Π° ΠΌΠ΅ΡΠΎΠ΄Π° Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΡΠΌΠΌΡ Π΄Π΅Π»ΠΈΡΠ΅Π»Π΅ΠΉ ΡΠΈΡΠ»Π° Π² ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Python. ΠΠ΅ΡΠ²ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ΅ ΡΠΈΡΠ΅Π», Π° Π²ΡΠΎΡΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΎΠ±Π΅Π½ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π·Π°Π΄Π°ΡΠΈ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΠ΅ΡΡ.
ΠΠ΅Π»Π°Ρ Π²Π°ΠΌ ΡΡΠΏΠ΅Ρ ΠΎΠ² Π² ΠΎΠ±ΡΡΠ΅Π½ΠΈΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ!