我有一些笛卡尔坐标定义:
point(a, 5, 1).
point(b, 4, 2).
point(c, 3, 3).
point(d, 2, 4).
以及“路线”定义:
route(path1, [a, c, b, d]).
然后我有一个函数来计算两点之间的距离,如下所示:
distance(P1, P2, D):-point(P1, X1, Y1), point(P2, X2, Y2),
Z is ((X2-X1)*(X2-X1))+((Y1-Y2)*(Y1-Y2)),
Z >= 0,
D is sqrt(Z).
如何计算路线的完整距离?
另外,如果我有几条路线,我怎样才能找到最长的一条?