[過去ログ] 関数型プログラミング言語Haskell Part32 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
25(3): デフォルトの名無しさん [sage] 2019/02/03(日) 21:27:00.44 ID:5bolWXfM(6/36) AAS
>>2222(1): ◆QZaw55cn4c [sage] 2019/02/03(日) 21:22:54.49 ID:t4xt++Qj(3/20) AAS
>>18
終了条件は
>fact 0 = 1
です。関数 fact の引数が 0 なら、1 を関数の値として返し、fact の求値作業は終了します。
fact への入力が 1 でないならば
>fact n = n * fact(n - 1)
の定義をつかって、最初の入力 n よりも小さい値 n - 1 (< n) を使った関数定義がつかえるように変換します
ということはやっぱり1を返したら必ず再帰は止まる仕様であってるのかな?
だったらすっきりするんだけども
29(2): デフォルトの名無しさん [sage] 2019/02/03(日) 21:30:12.31 ID:RwDwNYzW(4/27) AAS
>>25
そうそう。そのとおり。
31(1): デフォルトの名無しさん [] 2019/02/03(日) 21:32:49.38 ID:I0qputsI(3/5) AAS
>>25
その考えであってる。
32: ◆QZaw55cn4c [sage] 2019/02/03(日) 21:32:49.97 ID:t4xt++Qj(5/20) AAS
>>25
「1 を返したら」とまるのではなく
fact 0 = 1
と fact の求値が、この行で確定しているから、止まるのです。
fact 0 = 100
という定義であっても、とまりますよ
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.051s