【Python】べき乗と平方根・累乗根の計算

PythonのTopに戻る


 

 べき乗と平方根・累乗根の計算

整数のべき乗と平方根・累乗根の計算などは以下のように行える。

print(2 ** 2)     # 2 の 2 乗 (int型)
print(2.0 ** 2)   # 2 の 2 乗 (float型)
print(2. ** 2)    # 2 の 2 乗 (float型)
print(2 ** 0.5)   # 2 の 0.5 乗 (2の平方根)
print(2 ** (1/3)) # 2 の3乗根
4
4.0
4.0
1.4142135623730951
1.2599210498948732

勿論、負の値に対しても演算が可能である。

print((-2) ** 2)     # -2 の 2 乗 (int型)
print((-2.0) ** 2)   # -2 の 2 乗 (float型)
print((-2.) ** 2)    # -2 の 2 乗 (float型)
print((-2) ** 0.5)   # -2 の 0.5 乗 (-2の平方根)
print((-2) ** (1/3)) # -2 の3乗根
4
4.0
4.0
(8.659560562354934e-17+1.4142135623730951j)
(0.6299605249474367+1.0911236359717214j)

-2 ** 2 とすると -4 が返されるので要注意。-2 の 2 乗は (-2) ** 2 と書く必要がある。

べき乗計算にはpow関数も使うことができる。pow(x, y) とするとxのy乗を返す。pow(x, y, z) とするとxのy乗をzで割った余りを返す。

print(pow(2, 10))     # 2 の 10 乗 (int型)
print(pow(1.1, 10))   # 1.1 の 10 乗 (float型)
print(pow(2, 10, 9))  # 2 の 10 乗を 9 で割った余り (int型)
1024
2.5937424601000023
7

mathモジュールを使うと平方根の計算にsqrt関数が使える。

import math
print(math.sqrt(2))   # 2の平方根
1.4142135623730951

なおpow関数はmathモジュールをインポートしなくても使用可能である。

 

 複素数のべき乗計算

複素数のべき乗計算は以下のように書く。

print((2+1j)**2)
print((2+1j)**0.5)
print((2+1j)**(-1+3j))
(3+4j)
(1.455346690225355+0.34356074972251244j)
(-0.04124817484136909+0.10335818768180484j)

2+1j としている点に気を付けよう。2+j では動作しないので注意。(2+1j)**(-1+3j) は $(2+i)^{-1+3i}$ を表すが、複素数の複素数乗はmathモジュールをインポートしなくても計算可能である。


PythonのTopに戻る