next up previous
Next: 6.2 基本的なプログラミング機能、特に制御構造 Up: 6 プログラミング機能 Previous: 6 プログラミング機能

6.1 関数定義

(関数の話については、 http://nalab.mind.meiji.ac.jp/~mk/syori2-2005/jouhousyori2-2005-10/の中に新しい説明を書いた。そのうちこの文書にマージする予定である。)

Mathematica のプログラムは(ユーザー定義の)関数の集合という形になる。

百聞は一見にしかず。$f(x)=x^2$ なる関数 $f$ は、
        f[x_] := x^2
で定義出来る。 ``関数名[引数名_ ] := 式'' という形式で定義 する。(また ``f[名前_ 型名] := 式'' のように型名を指定する ことも出来る。)関数を再定義すると古い定義は消えてしまう。
        f[4]
        f[a+1]
        f[3x+x^2]
もちろん関数 ``f'' の定義が見たい場合は、``?f'', または ``??f'' とする。

多変数の関数も定義できる。
f[x_,y_] := (x^2 - y^2) / (x^2 + y^2)

変数の特定の値に対する関数値を代入文で定義することも出来る。 次の例では Fibonacci 数列を計算する関数 f[] を定義している。 再帰的な定義が出来ることに注意しよう。
       f[x_] := f[x] = f[x-1]+f[x-2] ; f[1]=1; f[2]=1
       Table[f[n],{n,10}]
他の例として
        f[x_] := Sin[x]/x; f[0]=1
        Plot[f[x],{x,-2Pi,2Pi}]


next up previous
Next: 6.2 基本的なプログラミング機能、特に制御構造 Up: 6 プログラミング機能 Previous: 6 プログラミング機能
Masashi Katsurada
平成20年10月18日