string - 如何在序言中将 (0,0) 转换为 [0,0]?

标签 string list prolog

我正在创建一个谓词 distance/3 来计算二维平面上两点之间的距离。例如:

?- distance((0,0), (3,4), X).
X = 5
Yes

只有 (0,0) 是列表 [0,0] 时,我的谓词才有效。有没有办法进行这种转换?

最佳答案

您可以使用统一其左侧和右侧的简单规则来做到这一点:

convert((A,B), [A,B]).

Demo.

关于string - 如何在序言中将 (0,0) 转换为 [0,0]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25791365/

相关文章:

javascript - 将\n 替换为 <br> 并将\r\n 替换为 javascript 中的 <p>

java - 当我将一个列表子列出到多个新列表中时,我丢失了项目。如何在不丢失数据的情况下子列表?

prolog - 在 SWI-Prolog 中编写格式化文本

JavaScript 查找字符串的 "newest"版本

java - 汉明距离作为两个字符串 Java 的整数返回

java - 计算并打印java中String中相同的出现次数

python - 如何创建满足特定条件的动态更新类实例列表? (Python)

python - python中的list(set)操作是O(1)吗?

prolog - 在 Prolog 中用一个一个替换另一个列表的每个实例

http - 在 Prolog 中处理 PWP HTML 页面内的 http 查询字符串