このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1242876647/369
# 次の各プログラムを作成
# 
# 1.線分の長さを求める
#  -両端点の座標値(浮動小数点)を入力
#  -線分の長さを計算、表示
# 
# 2.三角形の面積を求める
#  -3頂点の座標軸(浮動小数点)を入力
#  -面積を計算、表示
# 
# 2では1つの点を原点に移動させてあとはS=1/2|ad-bc|でお願いします
# 
# 補足でこれがありました
# ◆ 平方根を求める関数
# 
#    double型の関数 sqrt() を使います.仮引数もdouble型です.
# 
#    例えばdouble型の変数 len の平方根を求める場合には,次のように呼び出
#    します.
# 
#    sqrt(len)
# 
#    関数sqrt()を使用するソースプログラムをコンパイルするときには,
# 
#    gcc -lm ***.c
# 
#    のように,コンパイルオプション「-lm」が必要です.
# 
# 
# 
# ・main関数の座標値読み込み部分を省略したものは以下の通りです

線分の長さ(X1,Y1,X2,Y2,_線分の長さ) :-
    _線分の長さ is sqrt((X2-X1)^2 + (Y2-Y1)^2).

三角形の面積(X1,Y1,X2,Y2,X3,Y3,_三角形の面積) :-
    一角を原点へ移動(X1,Y1,X2,Y2,X3,Y3,0,0,X22,Y22,X33,Y33),
    _三角形の面積 is abs(X22 * Y33 - Y22 * X33) / 2.

一角を原点へ移動((X1,Y1,X2,Y2,X3,Y3,0,0,X22,Y22,X33,Y33) :-
    X22 is X2 - X1,
    Y22 is Y2 - Y1,
    X33 is X3 - X1,
    Y33 is Y3 - X1.