TurboProlog知识初步.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TurboProlog知识初步

Turbo Prolog 知识初步 Turbo Prolog的常量和变量   1.常量 常量是用来命名特定对象和特定关系的一种符号,它描述的对象是已知的或具体的。在Turbo Prolog中合法的变量有以下四个方面: (1)整数和实数,如2004、89.2、0; (2)用小写字母打头的由字母、数字(0-9)串、下划线(_)组成的字符序列,如abcdef、may_be、tabel; (3)复合对象(如student(张三))和表(如[1,2,3,4,5]); (4)单引号内的单个字符(如#、a)或双引号内的任何字符序列,如中国、PDC Prolog。 2.变量 变量是用来代表某些尚不能命名的对象,通常有八种取值,即:整数、实数、字符、串、符号、复合对象和表。变量名是以大写字母或下划线打头的字母、数字(0-9)串序列,中间可插有下划线,如What、_Work_NAME3。 在Prolog中,有一个特殊的变量,不需要知道它是什么,也用不着它的名字,称匿名变量。用单一的下划线来表示匿名变量。例如,若要知道是否有人想跳舞,但不需要知道这个人的名字,就可以用匿名变量来表示。 Turbo Prolog常用的数据类型Turbo Prolog常用的数据类型(也称为标准领域)包括整数、实数、字符、字符串和符号等几种类型,具体说明如下表所示。类型名 标识符 取值范围 例子 整数类型 integer -32768~32767 -321,0,88 实数类型 real ±1E-308~±1E+308 -57.5,33,77.32 字符类型 char 单引号括起来的单个字符 a,X,#,5 字符串类型 string 用双引号括起来的任意字符序列 boy,Turbo Prolog 符号类型 symbol 以小写字面开头的字母、数字和下划线组成的序列; 用双引号括起来的任意字符序列 red_apple,egg1, abc,I am a girl. Turbo Prolog常用的数学函数 Turbo Prolog中常用的数学函数如下表所示。数学函数 Prolog函数 |x| abs(X) cos x cos(X) sin x sin(X) tg x tan(X) arctg x arctan(X) exp(X) ln x ln(X) log x log(X) sqrt(X) Prolog中的表 表是Prolog中一种非常有用的数据结构。表的表述能力很强,数字中的序列、集合,通常语言中的数组、记录等均可用表来表示。表的最大特点是其长度不固定,在程序的运行过程中可动态地变化。具体来讲,就是在程序运行时,可对表施行一些操作,如给表中添加一个元素,或从中删除一个元素,或者将两个表合并为一个表等。用表还可以方便地构造堆栈、队列、链表、树等动态数据结构。  一、表的形式 表的一般形式是 [x1,x2,...,xn] 其中xi(i=1,2,...,n)为Prolog的项,一般要求同一个表的元素必须属于同一领域。不包含任何元素的表称为空表,记为[]。例如下面就是一些合法的表。 [1,2,3]   [apple,orange,banana,grape,cane]   [Prolog,MAENS,Programming,in logic]   [[a,b],[c,d],[e]] []  二、表的特点 表的最大特点是其元素的个数可以在程序的运行期间动态变化。表的结构也可以是结构或表,且这时其元素可以属于不同领域。例如: [name(LiMing),age(20),sex(male),address(xian)] [[1,2],[3,4,5],[6,7]] 都是合法的表。后一个例子说明表也可以嵌套。 表还有一个重要特点,就是它可分为头和尾两部分。表头是表中第一个元素,而表尾是表中除第一个元素外的其余元素按原来顺序组成的表。例如下面的例子: 表 表头 表尾 [1,2,3,4,5] 1 [2,3,4,5] [apple,orange,banana] apple [orange,banana] [[a,b],[c],[d,e]] [a,b] [[c],[d,e]] [PROLOG] PROLOG [] [] 无定义 无定义 在程序中是用竖线“|”来区分表头和表尾的,而且还可以使用变量。例如一般地用[H|T]来表示一个表,其中H、T都是变量,H为表头,T为表尾。注意,此处H是一个元素(表中第一个元素),而T则是一个表(除第一个元素外的表中其余元素按原来顺序组成的表)。表的这种表示法很有用,它为表的操作提供了极大的方便。  

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档