mathモジュールとは
mathモジュールとは
Pythonには、プログラムの制作を助けてくれるモジュールが豊富に揃っています。mathモジュールはそのモジュールのひとつで、対数や三角関数などの複雑な計算を行いたいときに役立ちます。
mathモジュールを利用するためには、最初にimport文を書く必要があります。
import math #mathモジュールをインポート
#mathモジュールが利用可能になる
簡単な計算
・floor関数
floor関数は、小数点以下を切り捨てる関数です。
import math
val = math.floor(3.3)
print(val)
val = math.floor(5.89)
print(val)
val = math.floor(-10.5)
print(val)
3
5
-11
floor関数は、引数の小数点以下を切り捨て、int型を返します。
0未満の数も小さい数に切り捨てられます。int関数の場合は、0に近くなるように切り捨てられます。
・ceil関数
ceil関数は、小数点以下を切り上げる関数です。
import math
val = math.ceil(3.3)
print(val)
val = math.ceil(5.89)
print(val)
val = math.ceil(-10.5)
print(val)
4
6
-10
ceil関数は、引数の小数点以下を切り上げて、int型を返します。
・pow関数
pow関数は、累乗の計算をする関数です。
import math
val = math.pow(3,3) #3の3乗の値を返す
print(val,3**3)
val = math.pow(3,2.5) #3の2.5乗の値を返す
print(val,3**2.5)
val = math.pow(8,-2) #8の-2乗の値を返す
print(val,8**-2)
val = math.pow(9,1/2) #9の1/2乗の値を返す
print(val,9**(1/2))
27.0 27
15.588457268119896 15.588457268119896
0.015625 0.015625
3.0 3.0
pow関数は、第一引数を第二引数乗した値を返します。
・sqrt関数
sqrt関数は、平方根の計算をする関数です。
import math
val = math.sqrt(9) #9の平方根の値を返す
print(val)
val = math.sqrt(1.5) #1.5の平方根の値を返す
print(val)
3.0
1.224744871391589
sqrt関数は、第一引数の平方根を返します。
対数の計算
・log関数
log関数は、対数の計算をする関数です。
import math
val = math.log(9,3) #log3底の9の値を返す
print(val)
val = math.log(9,2) # log2底の9の値返す
print(val)
val = math.log(6,4) # log4底の6の値返す
print(val)
2.0
3.1699250014423126
1.292481250360578
log関数は、第二引数を底とした第一引数の対数を返します。
・log10関数
log10関数は、常用対数の計算をする関数です。
import math
val = math.log10(100) #log10底の100の値を返す
print(val)
val = math.log10(5) #log10底の5の値を返す
print(val)
2.0
0.6989700043360189
log10関数は、10を底とした第一引数の対数を返します。
・log2関数
log10関数は、log2底の計算をする関数です。
import math
val = math.log2(64) #log10底の100の値を返す
print(val)
val = math.log2(5) #log10底の5の値を返す
print(val)
6.0
2.321928094887362
log2関数は、2を底とした第一引数の対数を返します。
三角関数の計算
・円周率
mathモジュールのpi定数から円周率を取得することができます。
import math
val = math.pi
print(val)
3.141592653589793
・sin関数
sin関数は、正弦の計算をする関数です。
import math
val = math.sin(2) #2ラジアンの正接を返す。
print(val)
val = math.sin(math.pi/2) #pi/2ラジアンの正弦を返す。
print(val)
0.9092974268256817
1.0
sin関数は、引数から弧度法で正弦を求めて返しますcos関数
・cos関数
cos関数は、余弦の計算をする関数です。
import math
val = math.cos(1) #1ラジアンの余弦を返す。
print(val)
val = math.cos(math.pi) #piラジアンの余弦を返す。
print(val)
0.5403023058681398
-1.0
cos関数は、引数から弧度法で余弦を求めて返します。
・tan関数
tan関数は、正接の計算をする関数です。
import math
val = math.tan(3) #3ラジアンの正接を返す。
print(val)
val = math.tan(math.pi/3) #pi/3ラジアンの正接を返す。
print(val)
-0.1425465430742778
1.7320508075688767
tan関数は、引数から弧度法で正接を求めて返します。
練習問題
では、これまでの内容をもとに次のプログラムを作ってみましょう!
- (3√2)^3を小数点を切り捨てた値を求めて出力するプログラム
- マグニチュード8.9はマグニチュード7.3の何倍のエネルギーか求めて出力するプログラム
※マグニチュードが1上がると√1000倍、マグニチュードが2上がると1000倍になることを前提とする - Θ=150°のとき
sinΘ、cosΘ、tanΘを求めて出力するプログラム
解答例※あくまで一例です。
(1)
import math
val = math.pow(3*math.sqrt(2),3)
print(math.floor(val))
76
(2)
import math
val = math.pow(math.sqrt(1000),8.9-7.3)
print(val)
251.18864315095846
(3)
import math
radian = math.pi*5/6
print(math.sin(radian),math.cos(radian),math.tan(radian))
0.49999999999999994 -0.8660254037844387 -0.5773502691896257
最後に
この記事では、Pythonのmathモジュールについて紹介しました。
もっとPythonを学びたい!という方はこちらの記事でPythonの基本的な構文を学習することが出来ますのでぜひ立ち寄ってみてください!