階乗の計算ができるようになった!

階乗の計算


葵の開発ですが、ついに、階乗の計算ができるようになりました。
長かった!(と言っても3ヶ月ですが...)
ここまで、とても苦しかったのですが、後は、工夫して、いろいろな機能をつけていくだけです。
(ライブラリ作りも時間がかかりますが、これはとても楽しい作業です!)

# --- 関数の定義
●階乗再帰(答え,N)
  もし、N <= 0ならば
    それは答え
    戻る
  それは、階乗再帰(答え*N,N-1)

●階乗(Nの)
  それは階乗再帰(1,N)

# --- メイン
6の階乗を表示。

実行すると、6! = 1*2*3*4*5*6 = 720 の答えがでます。

P.S.
画面は、Flashなので、はてなダイアリーFlashの貼り付けができるようになれば、
がりがり動いていくその様が見せられるのに!!
要望!Flashの貼り付けができるようにしてください!

ちなみに、今のところ中間コードはこんな感じ

{type:"aoi",version:1000,maker:"aoic",time:1171928294953,
ir:"_,_,_,_,_,i6,u1,_,_,D0,@2,p,q,_,_,_,_,D2,i0,L,Z26,_,D1,T0,r,J28,_,_,_,_,_,_,D1,D2,*,_,D2,i1,-,u0,T0,r,_,_,_,_,i1,D1,u0,T0,r",
string_table:[],
func_table:[{name:"階乗再帰",args:2,addr:13},{name:"階乗",args:1,addr:42}]}

ライブラリを作る前に、中間コードの仕様を忘れないうちに、Java/JavaScript版も作ってみようかと思います。