このディレクトリの索引

#  [1] 授業単元:プログラミング 
#  [2] 問題文 
#  三つの整数値の平均値を求めるプログラム。 
#  ただし、平均値を求める二項平均述語以外は使うことができない。
#  

'三つの整数値の平均値を求める。ただし、平均値を求める二項平均述語以外は使うことができない。'(_平均値,_平均値,_平均値,_平均値) :- !.
'三つの整数値の平均値を求める。ただし、平均値を求める二項平均述語以外は使うことができない。'(_整数の一,_整数の二,_整数の三,_平均値) :-
        '三つの組み合わせが均等になるように繰り返し二項平均を取る'(_整数の一,_整数の二,_整数の三,_平均値).


'三つの組み合わせが均等になるように繰り返し二項平均を取る'(_整数の一,_整数の二,_整数の三,_平均値) :-
        二項平均(_整数の一,_整数の二,_二項平均の一),
        二項平均(_整数の一,_整数の三,_二項平均の二),
        二項平均(_整数の二,_整数の三,_二項平均の三),
        '三つの整数値の平均値を求める。ただし、平均値を求める二項平均述語以外は使うことができない。'(_二項平均の二,_二項平均の三,_二項平均の一,_平均値).

二項平均(_整数の一,_整数の二,_二項平均) :-
        _二項平均 is (_整数の一 + _整数の二) / 2.