prolog - 如何在 Prolog 中定义和检查参数
问题描述
我是 prolog 的新手,并且有一个定义为的图表
edge(1,2).
edge(1,3).
edge(2,3).
edge(3,4).
edge(4,6).
edge(6,5).
edge(5,3).
edge(5,1).
path(A,B) :-
walk(A,B,[])
.
这应该显示边缘之间的连接,以及是否可以从一个节点走到另一个节点(?)
我正在尝试使它检查W(第一个参数)是否是G(图形和第二个参数)中的步数,以便我可以执行
?-edge(G), walk([5,Y,X,6],G)
and
succeed with Y=3, X=4.
解决方案
推荐阅读
- bash - 防止链式命令中过早的 shell 参数扩展
- postgresql - 无法在 PgAdmin 中保存双精度 []
- bash - 将txt文件中的所有值与另一个值相乘
- node.js - 使用 Mocha 和 Supertest 测试缓存
- php - 加入表格时如何使用 with()
- github - 在家里的电脑上看不到 git 分支
- tsql - 遍历数据库中的每个表并获取一列的前三位
- google-calendar-api - 使用 Google API 与 Squarespace 集成 Google 日历
- javascript - 试图确定“document.getElementById”中引用了哪些字段
- liquibase - 使用 loadData/loadUpdateData 时,如何根据 .csv 文件中的数据在另一个表中找到外键?