関数
数学において、「x の値が一つ決まると y の値も一つ決まる」とき、x と y の関係を「関数」と呼びます。この例では、x の関数として、y=f(x) という式となります。関数の種類として、例えば、以下の関数は全て、x の値が一つ決まれば、y の値も一つに決定します。
- 一次関数:
- 二次関数:
- 平方根:
- 正弦関数:
- 対数関数:
上記の一次関数の例では、x と y の関係のみに着目したときは、a と b は何らかの値が前提となります。しかし、「a と b と x の3つの値がそれぞれ決まれば、y の値が一つ決まる」という言い方もできます。
関数とは
Jasmine Tea では、指定された 0 個以上の値に対して、ある決まった計算を行い、その計算の結果を得ることができるものを「関数」と呼びます。そして、計算に使われる元の値のことを「引数」といいます。行われる計算の種類に従って、各関数は名前を持っています。数学において関数を f(x) と表現するように、Jasmine Tea のプログラムの中で関数は以下のように書きます。
- 関数名(引数1, 引数2, …)
関数名の後ろに、関数の計算で使用する引数を括弧で囲みます。もし2つ以上の引数が必要になるときは、「,」(カンマ記号)を区切り記号として使います。
組み込み関数
Jasmine Tea では、いくつかの関数が提供されていて、すぐに式の中で利用できます。以下は、関数を使った式の例です。
max(1, 2)+1
→ 結果は 3。max関数により大きい方の数値 2 が得られる。abs(-5)*2
→ 結果は 10。abs関数は絶対値を返すので数値 5 が得られる。pow(r,2)*pi()
→ 結果は円の面積。pow関数により数値変数 r の値の2乗が得られ、pi関数により円周率が得られる。random(1,6)
→ 結果はサイコロの目のいずれか。random関数により、1〜6のうちのいずれかの整数が得られる。
上記の例は、数値を扱う関数でした。Jasmine Tea では、文字列を扱う関数もあります。以下は、文字列を扱う関数の例です。
left$("hello", 2)
→ 結果は "he"。left$関数により、1つ目の引数で受け取った文字列から、2つ目の引数で受け取った個数だけ左から文字を取り出した結果が得られる。scr$(20,10)
→ 結果は画面に表示されていた文字。scr$関数により、引数で指定されたテキスト画面の位置(横、縦)に表示されていた文字が得られる。
関数による計算が行われた結果の数値や文字列のことを「戻り値」と呼びます。関数を使った結果戻ってきた値、という意味です。Jasmine Tea では、関数は必ず一つの戻り値が得られます。