π ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ Π² ΠΏΠΈΡΠΎΠ½Π΅? π€
import math
def lcm(a, b):
return abs(a * b) // math.gcd(a, b)
num1 = 16
num2 = 24
result = lcm(num1, num2)
print(f"ΠΠ°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π» {num1} ΠΈ {num2} ΡΠ°Π²Π½ΠΎ {result}.")
Π ΡΡΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ lcm, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ° - ΡΠΈΡΠ»Π°, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ
ΠΌΡ Ρ
ΠΎΡΠΈΠΌ Π½Π°ΠΉΡΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ math.gcd, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΠΎΠ±ΡΠΈΠΉ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΡΡΠΈΡ
ΡΠΈΡΠ΅Π», ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΠΎΡΠΌΡΠ»Ρ lcm = abs(a * b) // gcd(a, b) Π΄Π»Ρ Π½Π°Ρ
ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ.
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΡΠ΅ΠΌ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π» 16 ΠΈ 24 ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π° ΡΠΊΡΠ°Π½. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ num1 ΠΈ num2 Π½Π° ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠΈΡΠ»Π°, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ
ΠΏΠ°Ρ ΡΠΈΡΠ΅Π».
Π£Π΄Π°ΡΠΈ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°!
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ Π² ΠΏΠΈΡΠΎΠ½Π΅
ΠΠ°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ (ΠΠΠ) Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» - ΡΡΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΄Π΅Π»ΠΈΡΡΡ Π½Π° ΠΎΠ±Π° Π·Π°Π΄Π°Π½Π½ΡΡ ΡΠΈΡΠ»Π° Π±Π΅Π· ΠΎΡΡΠ°ΡΠΊΠ°. Π Python ΡΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ, ΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Π½ΠΈΡ .
1. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° while
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» - ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° while. ΠΡ Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ· Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ, ΠΏΠΎΠΊΠ° ΡΠΈΡΠ»ΠΎ Π½Π΅ ΡΡΠ°Π½Π΅Ρ ΠΊΡΠ°ΡΠ½ΡΠΌ ΠΎΠ±ΠΎΠΈΠΌ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΠΈΡΠ»Π°ΠΌ.
def find_lcm(num1, num2):
lcm = max(num1, num2)
while True:
if lcm % num1 == 0 and lcm % num2 == 0:
return lcm
lcm += 1
num1 = 12
num2 = 18
lcm = find_lcm(num1, num2)
print(f"ΠΠ°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π» {num1} ΠΈ {num2} ΡΠ°Π²Π½ΠΎ {lcm}")
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ find_lcm, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π° ΡΠΈΡΠ»Π° num1 ΠΈ num2. ΠΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΠΠ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ· Π΄Π²ΡΡ ΡΠΈΡΠ΅Π». ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΈΠΊΠ» while Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΠΠ ΠΊΡΠ°ΡΠ½ΡΠΌ ΠΎΠ±ΠΎΠΈΠΌ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΠΈΡΠ»Π°ΠΌ. ΠΡΠ»ΠΈ Π΄Π°, ΠΌΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ Π½Π΅Ρ, ΠΌΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΠΠ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅ΠΌ ΠΠΠ.
2. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ (ΠΠΠ)
ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» - ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ (ΠΠΠ). ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ math.gcd Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΡΠΌΡΠ»Ρ ΠΠΠ = (ΡΠΈΡΠ»ΠΎ1 * ΡΠΈΡΠ»ΠΎ2) / ΠΠΠ.
import math
def find_lcm(num1, num2):
gcd = math.gcd(num1, num2)
lcm = (num1 * num2) // gcd
return lcm
num1 = 12
num2 = 18
lcm = find_lcm(num1, num2)
print(f"ΠΠ°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π» {num1} ΠΈ {num2} ΡΠ°Π²Π½ΠΎ {lcm}")
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΌΠΎΠ΄ΡΠ»Ρ math ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΅Π³ΠΎ ΡΡΠ½ΠΊΡΠΈΡ gcd Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π». ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΎΡΠΌΡΠ»Ρ ΠΠΠ = (ΡΠΈΡΠ»ΠΎ1 * ΡΠΈΡΠ»ΠΎ2) / ΠΠΠ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΠΠ. ΠΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ Π½Π° ΡΠΊΡΠ°Π½.
3. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ numpy
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° NumPy, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΅ ΡΡΠ½ΠΊΡΠΈΡ lcm Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΠΠ Π΄Π²ΡΡ ΡΠΈΡΠ΅Π». ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ:
import numpy as np
num1 = 12
num2 = 18
lcm = np.lcm(num1, num2)
print(f"ΠΠ°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π΅ ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ΅Π» {num1} ΠΈ {num2} ΡΠ°Π²Π½ΠΎ {lcm}")
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ numpy ΠΏΠΎΠ΄ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠΎΠΌ np. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ lcm, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ Π΅ΠΉ Π΄Π²Π° ΡΠΈΡΠ»Π°, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΠΠΠ. ΠΡ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΊΡΠ°Π½.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ (ΠΠΠ) Π΄Π²ΡΡ ΡΠΈΡΠ΅Π» Π² Python. ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠΈΠΊΠ» while, ΡΡΠ½ΠΊΡΠΈΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅Π³ΠΎ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ (ΠΠΠ) ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ NumPy. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΡΠΈΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π·Π°Π΄Π°ΡΠΈ.