このディレクトリの索引
ttp://sum2cha.blogpico.com/archives/2017 レス番号606 
[1] 授業単元: プログラミング 
[2] 問題文(含コード&リンク): 
全部で3つなのですが 
1・ 以下のプログラムを作成 
・ 以下の数列を0〜20まで表示 
・ 数列は以下の通りとする 
・ a[0] = 0.01, a[1] = 0.1, a[2] = 1.0 
・ a[n+1] = a[n] + a[n-1] + a[n-2] 
・ プログラムを実行するとa[0]〜a[20]までの値が改行区切りで表示されること

t2_53 :- 
    findall(X,(for(0,N,20),t2_53(N,X)),L), 
    wrln(L). 

t2_53(0,0.01). 
t2_53(1,0.1). 
t2_53(2,1.0). 
t2_53(N,X) :- 
    N1 is N - 1, 
    N2 is N - 2, 
    N3 is N - 3, 
    t2_53(N1,X1), 
    t2_53(N2,X2), 
    t2_53(N3,X3), 
    X is X1 + X2 + X3. 

%%%%%%%%%%%%%%%%%%%% 
wrln([]). 
wrln([A|R]) :- write_formatted('%t\n',[A]),wrln(R).