实验一 Visual Prolog运行环境实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一Visual Prolog运行环境实验

一、实验目的

1、了解PROLOG解释器;

2、掌握PROLOG语言中常量、变量的表示方法;

3、掌握利用PROLOG进行事实库、规则库的编写方法。

二、实验要求

1、熟悉Visual Prolog运行环境,包括硬件与软件环境;

2、学习示例程序,分析其功能;

3、写出Example 1、Example 2、Example 3示例程序的功能;

4、利用PROLOG进行事实库、规则库的编写,并在此基础上进行简单的询问。

三、实验设备

计算机,Visual prolog教学软件。

四、实验内容及步骤

(一)实验内容:

1、熟悉Visual prolog的运行环境,包括所用的机器的硬件与软件环境;

2、学习使用Visual prolog,包括进入Prolog主程序、编辑源程序、退出等基本操作;

3、学习Visual prolog的简单程序结构,掌握分析问题、询问解释技巧;

4、了解PROLOG语言中常量、变量的表示方法;

5、利用PROLOG进行事实库、规则库的编写,并在此基础上进行简单的询问。

(二)实验步骤:

1、、安装Visual Prolog集成开发环境;

3、双击桌面图标或者找到Visual Prolog可执行文件所在目录双击图标,启动Visual prolog集成开发环境;

4、打开Project菜单,选择New Project菜单项,将工作目录修改为你要保存到的文件夹,输入项目名称,选择“console application”。

5、建立项目之后,单击Build/Build 一下,出现如图所示对话框,单击取消按钮,

6、编辑m ain.pro 文件内容,运行Example 1、Example 2,分析程序功能;

7、保存每个.Pro文件,保存工程。退出Visual Prolog系统。

五、源程序

Example 1:搜索表中所有的元素的过程。

implement main

open core

class predicates

member:(integer, integer*) nondeterm anyflow.

member:(string, string*) nondeterm anyflow.

test:(string*) procedure (i).

test:(integer*) procedure (i).

clauses

classInfo("main", "searchList").

member(H, [H|X]):-stdio::write("\n\t[",H,"|", X,"]").

member(H, [X|T]) :- member(H, T),stdio::write("\t[",X,"|", T,"]").

test(L) :-

stdio::write("\n",L,"============>"),

member(H, L),stdio::write("\n\t",H),

fail

or succed).

run():-

console::init(),

L= [2,3,4,5], test(L),

stdio::nl,

S= ["a", "b", "c"], test(S),

_=stdio::readli

ne(). end implement

main goal

mainExe::run(main::run).

Example 2:求阶乘。运行后,我们输入一个数字,就得到一个阶乘结果,直至我们同时按下Ctrl键和右上角的B reak 键结束。

class predicates

fact:(integer N, integer Res) procedure (i,o).

clauses

classinfo("facfun", "1.0").

fact(N, 1) :- N<1, !.

fact(N, N*F) :- fact(N-1, F).

run():-

console::init(),

X =stdio::read(),

fact(X, F),

stdio::write("控制台应用输出结果", " 输入数字= ",X, " 其阶乘= ",

F), stdio::nl,

!,

run().

run(). %按C trl+Break 结束

end implement main

goal

mainExe::run(main::run ).

六、实验报告要求

实验报告应简单明了,语言通顺,结果正确,程序规范。实验报告的重点是实验结

果的正确性与分析。包括:实验题目、要求、实验环境、实验内容与实验结果(要求附上运行的源程序)、实验中出现的问题、对问题的解决方案、实验总结等。

相关文档
最新文档