当前位置: 首页 > 编程笔记 >

Prolog附加/ 3

訾淇
2023-03-14
本文向大家介绍Prolog附加/ 3,包括了Prolog附加/ 3的使用技巧和注意事项,需要的朋友参考一下

示例

append([], Bs, Bs).
append([A|As], Bs, [A|Cs]) :-
    append(As, Bs, Cs).

append/3是最知名的Prolog关系之一。它定义了三个参数之间的关系和为真,如果在第三个参数是表示在第一和第二参数指定的列表的级联列表。

值得注意的是,和是典型的好Prolog的代码,append/3可以在使用几个方向:它可用于:

  • 追加两个完全或部分实例化的列表:

      ?- A = [1, 2, 3], B=[4, 5, 6], append(A, B, Y)
     Output:
     A = [1, 2, 3],
     B = [4, 5, 6],
     Y = [1, 2, 3, 4, 5, 6].
  • 检查的关系是否是三个完全实例名单属实:

      ?- A = [1, 2, 3], B = [4, 5], C = [1, 2, 3, 4, 5, 6], append(A, B, C)
     Output:
     false
  • 生成所有可能的方式,以两个列表追加到给定的列表:

      ?- append(A, B, [1, 2, 3, 4]).
     Output:
     A = [],
     B = [1, 2, 3, 4] ;
     A = [1],
     B = [2, 3, 4] ;
     A = [1, 2],
     B = [3, 4] ;
     A = [1, 2, 3],
     B = [4] ;
     A = [1, 2, 3, 4],
     B = [] ;
     false.
 类似资料:
  • SWI-Prolog 提供一个免费的 Prolog 编程语言环境。包括一个图形化工具包 XPCE 。该项目 1987 年开始开发,在研究和教育领域中广泛使用。

  • 由保加利亚科技学院的数学和信息学院及保加利亚索菲亚大学数学和信息学系人员共同研发的用 MFC 实现的 Windows 平台下的开源 Prolog 逻辑编程语言编译器,提供了三个版本:轻量版(Light Edition,免费版)、中量版(Middle Edition,收费)和专业版(Professional Edition,收费),轻量版源码在 AntiGNU 协议下公开。 Features 独特的

  • 本文向大家介绍Prolog差/ 2,包括了Prolog差/ 2的使用技巧和注意事项,需要的朋友参考一下 示例 该谓词dif/2是一个纯谓词:它可以在所有方向和所有实例化模式下使用,始终意味着其两个参数是不同的。

  • 在Ruby中, 可以使用库来添加新的类,模块或方法. 下列就是标准发布包中附加库的一览表. 读取库时需要使用require或load. 附加库一览表 文本 /文件 /网络 /输入输出 /日语 /数学 /数据库 /画面控制/CUI /GUI /日期·时间 /多线程·同步 /Unix /MS Windows /正则表达式 /GC /Design Pattern /开发工具 /命令行 /其他 Engli

  • 本章将介绍如何编写嵌入式的 Prolog 解释器。第 19 章中已经展示了编写数据库查询语句编译器的方法,这里我们再加入一个新的元素:规则。有了规则,就可以根据已有的知识通过推理得到新知。一组规则定义了表明事实之间相互蕴含关系的一棵树。由于这棵树可能包含无限多的事实,所以我们必须使用非确定性的搜索。 Prolog 是嵌入式语言的一个极好的例子。它融合了三个元素:模式匹配,非确定性,规则。其中,前两

  • 问题内容: 我正在尝试构建一个应用程序,该应用程序粘贴上一个活动的输入(工作正常),然后向我展示数据库中的某些内容(按ButtonGet时)。问题是,当我尝试运行项目时,我得到了 。我的代码有什么问题? 问题答案: 在您的onCreate中,您要调用super.onCreate()两次,还要调用setContentView()两次。我很确定那不是您想要的。