?- 'a##'. c160-354#
このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1349527750/354
#  [1] 授業単元: 繰り返し 
#  [2] 問題文(含コード&リンク): http://ime.nu/codepad.org/ULbfD1pL 
#  冪乗計算 
#  
#  /*キーボードから整数n (2<=n<=9) を入力し
#  値をすべて表示するプログラムを作成せよ。
#  
#  例)n = 5 の場合
#  2 4
#  3 9 27
#  4 16 64 256
#  5 25 125 625 3125
*/

'キーボードから整数n (2<=n<=9) を入力し、i^j (2<=i<=n,1<=j<=i) の値をすべて表示する' :-
        'キーボードから整数n (2<=n<=9) を入力し'(_整数n),
        'i^j (2<=i<=n,1<=j<=i) の値をすべて表示する'(2,_n),
        write('\n').

'キーボードから整数n (2<=n<=9) を入力し'(_整数n) :-
        整数を得る('整数n (2<=n<=9)',(_整数n >=2,_整数n =< 9),_整数n),!.

'i^j (2<=i<=n,1<=j<=i) の値をすべて表示する'(_i,_n) :-
        _i > _n,!.       
'i^j (2<=i<=n,1<=j<=i) の値をすべて表示する'(_i,_n) :-
        'i ^ j の表示'(_i),
        _i_2 is _i + 1,
        'i^j (2<=i<=n,1<=j<=i) の値をすべて表示する'(_i_2,_n).

'i ^ j の表示'(_i) :-
        between(1,_i,_j),
        _x is _i ^ _j,
        writef('%t ',[_x]),
        _i = _j.