【魔法】リリカル☆Lisp【言語】at TECH【魔法】リリカル☆Lisp【言語】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト89:デフォルトの名無しさん 08/03/15 05:17:07 >>88 上のほうだけど、 (define (s n) (if (= n 0) 0 (+ n (s (- n 1))))) が正しいんだと思うんだけど、↑これだと正常に動くね。 (define (s n) (if (= n 1) 1 (+ n (s (- n 1))))) にすると、(s 0) を評価したときに無限ループに入ってしまうので、 それが関係してるのかもしれない。 90:88 08/03/15 05:35:29 >> 89 ありがとうございます。 なるほど、計算を省略しようとしたのが失敗でしたか。。 0!ってのもあるのかー ちなみに (define (s n) (if (<= n 1) 1 (+ n (s (- n 1))))) だと間違いでした。 (s 0) -> 1 になるからかも。 でもそんなことより女の子の絵がかわいいですね'(* ^ ^ *) 91:中の人 08/03/15 23:02:15 >>88-90 入力されたプログラムが正しいか確かめるために (s 0) の値が0になるか確認をしています。 そのため、引数が0の時の場合分けがなければまずいことになります。 ちょっと説明と問題がまずかったかも。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch