このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1274827528/31
#  [1] 授業単元:プログラミング演習  
#  [2] 問題文(含コード&リンク): 
#  http://ime.nu/kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10625.txt  
#  より
# 三角形の三頂点の座標が与えられたとして重心を求めなさい。
#

三角形の三頂点の座標が与えられたとして重心を求める(X1,Y1,X2,Y2,X3,Y3,_重心のX座標,_重心のY座標) :-
        _重心のX座標 is (((X2+X3)/2-X1)*2)/3+X1,
        _重心のY座標 is (((Y2+Y3)/2-Y1)*2)/3+Y1.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

三角形の三頂点の座標が与えられたとして重心を求める(X1,Y1,X2,Y2,X3,Y3,_重心のX座標,_重心のY座標) :-
        'X1の対辺の中点の座標'(X2,Y2,X3,Y3,_対辺の中点のX座標,_対辺の中点のY座標),
        '重心は(X1,Y1)からこの中点へ伸ばした直線の中点寄り3分の2の所にある'(X1,Y1,_対辺の中点のX座標,_対辺の中点のY座標,_重心のX座標,_重心のY座標).

'X1の対辺の中点の座標'(X2,Y2,X3,Y3,X,Y) :-
        _対辺の中点のX座標 is (X2 + X3) / 2,
        _対辺の中点のY座標 is (Y2 + Y3) / 2.

'重心は(X1,Y1)からこの中点へ伸ばした直線の中点寄り3分の2の所にある'(X1,Y1,_対辺の中点のX座標,_対辺の中点のY座標,_重心のX座標,_重心のY座標) :-
        _重心のX座標 is (X1 - _対辺の中点のX座標) / 3 + _対辺の中点のX座標,
        _重心のY座標 is (Y1 - _対辺の中点のY座標) / 3 + _対辺の中点のY座標.