Lisp Scheme Part19
■ このスレッドは過去ログ倉庫に格納されています
0791デフォルトの名無しさん
2008/03/02(日) 14:22:16>>788
なるほど。途中は何をやっていたもいいと。
処理の最後(末尾)で自身を呼び出していればOKということですね。
>>789
>関数を処理した後に行わないといけない処理を含んでいる。
これは、今の例の場合 return のことでしょうか?
仮にcalculateの戻り値をvoidにできたとして、最後にcalculateを
呼び出していれば、自己末尾再帰ということになるのでしょうか?
>>790
確かにそうですね。引数が一つ余分でした。
アルゴリズムの範疇になるかと思いますが、
上のC言語での階乗計算を自己末尾再帰で表現することは可能ですよね?
Schemeの再帰は実行効率を考えて自己末尾再帰が採用されているという
ことですよね。
■ このスレッドは過去ログ倉庫に格納されています