- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(人工智能导论实验指导
人工智能导论实验指导书
实验一
实验名称:PROLOG 程序实验
实验日期:实际上机日期
参考资料:《人工智能导论实验指导书》
实验目的:
熟悉PROLOG的应用开发环境
了解PROLOG语言中常量、变量的表示方法
利用PROLOG进行事实库、规则库的编写
利用PROLOG解决递归问题
实验内容(步骤):
启动SWI-Prolog
1. 事实库的建立:
book table isbn title pages 1 the art of prolog 400 23 the mistery of strawberries 42
person table name statler waldorf
Owns table person isbn waldorf 1 waldorf 23 statler 1
wrote table person isbn waldorf 23 statler 1 hate table person isbn statler 1
book(1,The art of Prolog,400).
book(23,The mistery of Strawberries,42).
person(Statler).
person(Waldorf).
wrote(Statler,1).
wrote(Waldorf,23).
hates(Statler,1).
owns(Waldorf,23).
assert(book(1,The Art of Prolog,400)).
2.查询知识库
?- book(1,The Art of Prolog,400).
Yes
?- book(23,The mistery of Strawberries,42).
No
?- book(1,Title,Pages).
Title = The Art of Prolog
Pages = 400
3.知识库建立的另一种方法
将知识库保存为pl格式文件。如:D:\user\books.pl
使用命令载入知识库:
?- consult(d:/user/books.pl).
Warning: (d:/user/books.pl:1):
Redefined static procedure book/3
% books.pl compiled 0.01 sec, 1,004 bytes
4.?表示规则
brochure(ISBN):-
book(ISBN,_,Pages),
Pages 100.
尝试添加这条规则到books.pl 文件,并尝试查询: ?- brochure(Broch).
5递归问题
如?:求一个给定数的所有数字之和(如26 2+6=8)
total = 0
while number9 do
total = total + (number mod 10)
number = number / 10
total = total + number
% the simple case: if the number has only one digit
% then this number is the sum of all digits
count(Number,Number):-
Number 10.
% the recursive case: cut away the first digit,
% let someone (=recursive call) add the rest,
% and add your digit to that sum.
count(Number,Sum):-
Number = 10,
Digit is mod(Number,10),
NewNumber is Number // 10,
count(NewNumber,TmpSum),
Sum is TmpSum + Digit.
6.解决以下问题
(1)写一个查询检索所有的ISBN 号码。
(2)写一个查询检索所有作者并不喜欢他的著作的书名。
(3)写一个查询检索所有书名及其作者的名字。
(4)写一个谓词proud_author/1 ,返回拥有至少一本他们写的书的作者。
(5)写一个谓词count_even/2 ,输入一个数值,返回其中偶数数字的数目,如 count_even(248,A) - A = 3, count_even(249,A) - A = 2.
(6) 写一个谓词alleven/1,输入一个数值,如果其中都是偶数,放回成功,否则返回失败。
参考答案:
(1)?- book(ISBN
您可能关注的文档
最近下载
- 咖啡厅管理制度完整版.docx VIP
- 2025版糖尿病诊治指南PPT.pptx VIP
- 解读2025年中央一号文件精神PPT课件.pptx
- 《定向运动教学课件:理论课程精讲》.ppt VIP
- 视频监控系统维保方案及报价范文.doc VIP
- DB1311_T 060-2024 脱毒甘薯苗快繁技术规程.docx VIP
- DB1301T 328-2019 甘薯茎尖组织培养及脱毒试管苗快繁技术规程.docx VIP
- DB1301T 328-2019甘薯茎尖组织培养及脱毒试管苗快繁技术规程.docx VIP
- 四川省2025年高职单招文化考试(中职类)英语试卷+答案 完整版2025.pdf VIP
- 《机械基础(第七版)习题册》参考答案.pdf VIP
文档评论(0)