このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1339338438/17
#  {1] 授業単元:プログラミング演習  
#  [2] 問題文:  
#  http://ime.nu/codepad.org/hz40AN0p 
#  上記のプログラムを参考にしてprintf("*")とprintf("+") 
#  を使用して下記の模様を出力するプログラムを、for文を利用して作成せよ。 
#  図の上半分と下半分を別々に作成せよ。 

'"http://nojiriko.asia/prolog/c158_18_zu.html"の模様を出力する。図の上半分と下半分を別々に作成せよ。' :-
        上半分の作成,
        下半分の作成.

上半分の作成 :-
        append(L1,L2,[*,*,*,*,*,*,*,*,*]),
        行表示(L1),
        L2 = [].

下半分の作成 :-
        append(L1,L2,[*,*,*,*,*,*,*,*,*]),
        行表示(L2),
        L1 = [].

行表示(L) :-
        length(L,Len),
        0 is Len mod 2,
        atomic_list_concat(L,S),
        writef('%t+\n',[S]).