このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1269438098/627

'1〜9までの値の整数 n を入力として受け取り、実行例のように、その n を高さとした二等辺三角形を出力するプログラムを作成しなさい。' :-
          '1〜9までの値の整数 n を入力として受け取り、'(N),
          'その n を高さとした二等辺三角形を出力する'(N).

'1〜9までの値の整数 n を入力として受け取り、'(N) :-
        repeat,
        催促付き整数入力('1から9までの整数を入力:',N),
        '1〜9までの値の整数'(N),!.

'1〜9までの値の整数'(N) :- N >= 1,N =< 9,!.
'1〜9までの値の整数'(N) :- 'なお、10以上が入力されたら以下の実行例のようなエラーメッセージを発するようにしなさい。'(N),fail.

'なお、10以上が入力されたら以下の実行例のようなエラーメッセージを発するようにしなさい。'(N) :- write('入力する数は1から9までです \n').

'その n を高さとした二等辺三角形を出力する'(N) :- 'その n を高さとした二等辺三角形を出力する'(1,N),

'その n を高さとした二等辺三角形を出力する'(N,N) :-
        表示する数値列(N,S),
        write_formatted('%t\n',[S]),!.
'その n を高さとした二等辺三角形を出力する'(M,N) :-
        表示する数値列(M,S),
        write_formatted('%t\n',[S]),
        M2 is M + 1,
        'その n を高さとした二等辺三角形を出力する'(M2,N),
        write_formatted('%t\n',[S]),!.

表示する数値列(M,S) :- length(L,M),all(L,M),concat_atom(L,S),!.