Prolog-递归找到所需的解决方案后返回初始状态
我是 Prolog 新手,我无法弄清楚我的谓词出了什么问题。我正在尝试编写一个谓词来迭代顶点列表,例如 [a,b,d,f,k],并返回 edge(X, vertex1, vertex2)…
Prolog声明从不统一
我有3个递归规则,但其中一个从未统一我的查询。 checkCollisionDiagonal(QueenTarget,[],Qdist,0). checkCollisionDiagonal(QueenTarget, [Q|QueenLi…
如何在 Prolog 中双统一术语运算符?
我刚刚在如何统一Prolog中的术语运算符? 并得到了很好的答案。 但是,它并没有完全解决我的问题,即 =.. 仅适用于单面。 例如, test(Expr) :- 1 + 2…
Prolog:无法增加复杂项内变量的值
因此,我正在处理一个序言问题,在一个复杂的术语中定义了一个状态,当我尝试在此复杂术语中增加x的值时,没有任何 CurrentState(left, x, y). test =…
Arity = 0的Prolog函数
我试图在Prolog中写下以下内容: “如果代理人拥有箭头,则Hasarrow/0返回true,并且在拍摄行动后开始返回错误。” 代理商从拥有箭头开始。 我的代码…
Prolog:有没有办法在列表中找到最长的连续数序列并获得其长度?
给定5个随机数字的列表(数字范围从1到13),即[1,6,11,12,13],我如何找到连续最长的数字序列(即[11,12,13 ])它的长度必须更大或等于3,并且还必须…
如何在prolog中实现连接的原子列表?
做了这个谓词,它确实有效,但我被要求在不使用内置函数的情况下实现原子列表 concat,这可能吗? gradeInWords(Num,Words) :- WordsList = [zero,one…
如何使用 re_replace 在 Prolog 中转义符号
我尝试使用 re_replace 来替换字符串中的字符。例如: ?- re_replace("_"/g, "QW", "a_b_c", Str). Str = "aQWbQWc". 然后我尝试将 _ 替换为 \_。 文…
如何与prolog中的给定事实相匹配的谓词转换数字与单词
我想进行此示例:gradeinwords(Stud04,“数据库”,翻译)。 = [五,九]尝试了此代码以打印学生成绩 用文字的特定课程,我无法在事实和代码之间链接…
序言问题。我需要帮助来解决这个问题
student(stud04, 'Database', 59). student(stud04, 'Math 3', 67). student(stud04, 'Data Structures', 79). prerequisite('Database', 'Data Wareh…