Mathematica
https://upload.wikimedia.org/wikipedia/commons/thumb/2/20/Mathematica_Logo.svg/983px-Mathematica_Logo.svg.png
実行
shift-Enter
ヘルプ
?<Func>で関数の情報を見れる
code:nb
Plot[f,{x,Subscriptx, min,Subscriptx, max}] generates a plot of f as a function of x from Subscriptx, min to Subscriptx, max. Plot[{Subscriptf, 1,Subscriptf, 2,...},{x,Subscriptx, min,Subscriptx, max}] plots several functions Subscriptf, i. >> ?<Func>*で<Func>から始まる関数名の一覧を表示
??<Func>でパラメータも確認できる
ユーザ定義関数は大文字から初めなくても良い
{}はリスト、範囲を定義
[]は関数に使う
==は方程式を定義するときに使う
変わった記号
関数型プログラミング
これを一つずつ読み込みたい
Map関数などで使う
code:nb
Map[StringCount[我輩は猫である, Alternatives# &, {小学校1学年,小学校2学年}] #の部分にMapの第二引数のリストが順次適用される
Map
/@は糖衣構文。より関数型っぽくかける
Select
TSのfilter
&は無名関数
@は
@@
反復関数
Nest関数
再帰関数の代わりに使う?
パターンマッチを使った関数定義
constraint
Guardのこと
code:nb
code:nb
WPower[a_, n_ /; EvenQn] := WPower[a*a, (Quotientn, 2)] リストのheadとtail
Haskellの(Head, Tail)は、(First, Rest)が対応
headはh_, tailはt__で表す
code:nb
(* 2進数表示のリストを10進数の値に変換 *)
(* ちゃんと書くなら *)
B2dm_:=2^(Lengthm-1)*Firstm+B2d[Restm] clearする
code:nb