関数は、複数の実行文をひとまとめにしたもので、同じことを難読繰り返す時に用います。
次の例で説明します。def return までが関数で、関数 tasikake のように呼びます。
def tasikake(a , b):
c = a + b
d = a * b
return c, d
ここで、
def は、関数であることを宣言する約束語です(予約語と言います)。
tasikakeは関数の名前、(a, b)は、関数に渡す値です。関数tasikake(a, b) は、実行すると、a+b と a*b を呼ばれたところに返します。関数
tasikake を使ったプログラムを書いてみましょう。
print(tasikake(5, 6))
このプログラムを実行すると、
11, 30
のように、a+b = 5+6 と a*b = 5*6 の答えがプリントされます。
小学校で三角関数 sin(), cos()はまだ習わないかと思いますが、円形の図を書くのに便利な関数です。下の図は円の一部をあらわしています。斜めの灰色の線の長さが、円の半径です。この長さを a とします。この線と赤線の間の角度をΘ(シータ)と呼ぶことにします。
その時、赤線の長さが a×cos(Θ)、青線の長さが a×sin(Θ)のように計算できます。
赤線と斜めの灰色線の交わるところが中心の円の一部です。
ここで、角度Θは、30度や60度のような単位ではなく、ラジアンという単位で指定しなくてはいけません。そこで、30度の場合にPythonでは、
import math
math.sin(30*math.pi/180)
のように書かなくてはいけません。ここでmath.piは円周率(3.14....)です。
毎回このように書くのは面倒ですので、次のような関数を作っておくと便利です。
import math
def sin(theta):
returen theta * math.pi / 180
def cos(theta):
return theta * math.pi / 180
そうすると
print(sin(30))
のように、普通の度で計算できるようになります。