ํ์ด์ฌ์ math ๋ชจ๋
https://docs.python.org/ko/3.13/library/math.html
import math
## 1. ์์(constants)
- math.pi
์์ฃผ์จ ฯ ๊ฐ์ ์ ๊ณต (์ฝ 3.141592653589793) - math.e
์์ฐ์์ e ๊ฐ์ ์ ๊ณต (์ฝ 2.718281828459045)
์ด๋ฐ ์์๋ค์ ์ฌ์ฉํ ๋๋ math.pi
๋ฑ์ผ๋ก ์ฌ์ฉ
import math
r = 5
circle_area = math.pi * (r**2)
print(circle_area) # ์์ ๋์ด
2. ์์ฃผ ์ฐ๋ ํจ์๋ค
(1) ์ ๊ณฑ๊ทผ๊ณผ ์ง์, ๋ก๊ทธ
- math.sqrt(x)
x\sqrt{x}xโ (์ ๊ณฑ๊ทผ)์ ๋ฐํ - math.pow(x, y)
x^y ์ ๊ณ์ฐํ์ฌ ๋ฐํ (๊ฑฐ๋ญ์ ๊ณฑ). โป ํ์ด์ฌ์์ ๊ฑฐ๋ญ์ ๊ณฑ์x**y
๋ก๋ ๊ฐ๋ฅ - math.log(x)
์์ฐ๋ก๊ทธ lnโก(x)์ ๋ฐํ - math.log2(x)
logโก2(x) (๋ฐ์ด 2์ธ ๋ก๊ทธ)๋ฅผ ๋ฐํ - math.log10(x)
logโก10(x) (๋ฐ์ด 10์ธ ๋ก๊ทธ)๋ฅผ ๋ฐํ
import math
val = 16
sqrt_val = math.sqrt(val) # sqrt(16) = 4
log_val = math.log(val) # ln(16) = 2.772588...
log2_val = math.log2(val) # log2(16) = 4
log10_val = math.log10(val) # log10(16) = 1.204119...
(2) ์ฌ๋ฆผ, ๋ด๋ฆผ, ๋ฐ์ฌ๋ฆผ
- math.floor(x)
์ค์x
๋ฅผ ๋ด๋ฆผ(๋ฒ๋ฆผ)ํ ์ ์๋ฅผ ๋ฐํ ( โxโ ) - math.ceil(x)
์ค์x
๋ฅผ ์ฌ๋ฆผ(๋ฐ์ฌ๋ฆผ์ด ์๋๋ผ ๋ฌด์กฐ๊ฑด ์๋ก)์ ํ ์ ์๋ฅผ ๋ฐํ ( โxโ ) - round(x)
ํ์ด์ฌ ๋ด์ฅ ํจ์๋ก ๋ฐ์ฌ๋ฆผ์ ํ ๋ ์ฌ์ฉ (์์์ ์ฒซ์งธ ์๋ฆฌ์์ ๋ฐ์ฌ๋ฆผ).math
๋ชจ๋์ ํจ์๋ ์๋์ง๋ง ์์ฃผ ํท๊ฐ๋ฆฌ๊ธฐ์ ํจ๊ป ์ธ๊ธ
import math
num = 3.7
print(math.floor(num)) # 3
print(math.ceil(num)) # 4
print(round(num)) # 4
(3) ์ต์๊ณต๋ฐฐ์, ์ต๋๊ณต์ฝ์
- math.gcd(a, b)
๋ ์ aaa์ bbb์ ์ต๋๊ณต์ฝ์(gcdโก(a,b)\gcd(a, b)gcd(a,b))๋ฅผ ๊ตฌํด ์ ์๋ก ๋ฐํ - math.lcm(a, b)
๋ ์ aaa์ bbb์ ์ต์๊ณต๋ฐฐ์(lcmโก(a,b)\operatorname{lcm}(a, b)lcm(a,b))๋ฅผ ๊ตฌํด ์ ์๋ก ๋ฐํ (ํ์ด์ฌ 3.9 ์ด์์์ ์ง์)
import math
print(math.gcd(16, 24)) # 8
print(math.lcm(16, 24)) # 48 (Python 3.9+)
(4) ํฉํ ๋ฆฌ์ผ
- math.factorial(n)
n!์ ์ ์๋ก ๋ฐํ
import math
print(math.factorial(5)) # 120
(5) ์กฐํฉ(comb)
- math.comb(n, k)
์กฐํฉ (nk)\binom{n}{k}(knโ) ( nnn๊ฐ ์ค์์ kkk๊ฐ๋ฅผ ์์ ์์ด ๊ณ ๋ฅด๋ ๋ฐฉ๋ฒ์ ์ ) ์ ์ ์๋ก ๋ฐํ
import math
n = 5
k = 2
print(math.comb(n, k)) # 10
(6) ๊ธฐํ ์ ์ฉํ ํจ์๋ค
- math.fabs(x)
์ ๋๊ฐ(๋ถ๋์์์ )์ ๋ฐํํฉ๋๋ค. ๋ด์ฅํจ์abs()
์ ๋น์ทํ์ง๋ง, ๋ฆฌํด ํ์ ์ด float์ธ ์ ์ด ํน์ง - math.trunc(x)
x
๋ฅผ ์ ์ ๋ถ๋ถ๋ง ๋จ๊ธฐ๊ณ ์์์ ์ดํ๋ฅผ ์๋ผ๋ด์ด ๋ฐํ(0 ๋ฐฉํฅ์ผ๋ก ๋ฒ๋ฆผ) - math.hypot(x, y)
์ง๊ฐ์ผ๊ฐํ์์ ๋น๋ณ์ ๊ธธ์ด๋ฅผ ๊ตฌํจ โ 2์ฐจ์ ๊ฑฐ๋ฆฌ ๊ณ์ฐ์๋ ์ ์ฉ
import math
print(math.fabs(-3.7)) # 3.7
print(math.trunc(3.7)) # 3
print(math.hypot(3, 4)) # 5.0 (3-4-5 ์ผ๊ฐํ)