このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1339338438/197
#  [1] 授業単元:プログラミングC  
#  [2] 問題文(含コード&リンク):  
#  配列vx[5]の各要素に数値をscanfを用いて入力した後、  
#  ポインタptrを用いて任意の要素番号を指し、  
#  その配列要素が格納している数値を表示せよ。  
#   
#  ※ttp://kie.nu/dZp  
%
%  問題文にある「配列」はPrologの仕様にはないため、以下のように問題を変更する。
%
%  5要素のならび_vxの各要素に数値を入力した後、
%  任意の要素番号(1=<_要素番号=<5)を入力し、その要素番号に格納している数値を表示させる。
%

'5要素のならび_vxの各要素に数値を入力した後、任意の要素番号(1=<_要素番号=<5)を入力し、その要素番号に格納している数値を表示させる' :-
        '5要素のならび_vxの各要素に数値を入力した後'(_vx),
        '任意の要素番号(1=<_要素番号=<5)を入力し、その要素番号に格納している数値を表示させる'(_vx).

'5要素のならび_vxの各要素に数値を入力した後'(_vx) :-
        '5要素のならび_vx'(_vx),
        各要素に数値を入力した後(_vx).

'5要素のならび_vx'(_vx) :-
        length(_vx,5).

各要素に数値を入力した後(_vx) :-
        findall(_数値,(
                    member(_,_vx),
                    数を得る(数値,_数)),
                _vx).

'任意の要素番号(1=<_要素番号=<5)を入力し、その要素番号に格納している数値を表示させる'(_vx) :-
        '任意の要素番号(1=<_要素番号=<5)を入力し'(_任意の要素番号),
        その要素番号に格納している数値を(_任意の要素番号,_vx,_格納している数値),
        表示させる(_任意の要素番号,_格納している値).

'任意の要素番号(1=<_要素番号=<5)を入力し'(_任意の要素番号) :-
        整数を得る('任意の要素番号(1=<_要素番号=<5)',(_任意の要素番号>=1,_任意の要素番号=<5),_任意の要素番号).

その要素番号に格納している数値を(_任意の要素番号,_vx,_格納している数値) :-
        nth1(_任意の要素番号,_vx,_格納している数値).

表示させる(_任意の要素番号,_格納している値) :-
        writef('要素番号[%t]の格納している値は %t です。\n',[_任意の要素番号,_格納している値]).



%  数を得る/2
%  整数を得る/3