APL/J言語における三角関数


えっと、まだぜんぜんわかっていないのでほんとに今知っていることの備忘です。

円周率(パイ)は1p1(いちピーいち)もしくはo.1(オードットいち)であらわされます。1p1は1p2にすると1かけるパイの自乗です。

   1p1
3.14159
   o.1
3.14159

つぎに、オードット(o.)の前に数字をおいて、後ろに数字をおくとサインコサインが計算されます。1がサインで、2がコサイン。/(スラッシュ)という副詞をおくと、配列のそれぞれに動詞が適用されますので、サインカーブを書くことができます。

   load 'plot'
   plot 1 o./ 0.2*i.60

解説:グラフを書くときはload 'plot'します。i.60は0 1 2 3 ... 59という配列を発生して、それに0.2をかけるので0 0.2 0.4 0.6 ... 11.8という配列になる。それぞれの値に対応するサインを1 o./で求めて結果をプロットする。すると美しいサインカーブが書けます。

参考:

   1 o./ 0.2 * i. 60
0 0.198669 0.389418 0.564642 0.717356 0.841471 0.932039 0.98545 0.999574 0.973848 0.909297 0.808496 ...
   1. o./ 3.14 % 2
1

以上