丁浩轩prolog教学实习报告

丁浩轩prolog教学实习报告

ID:38640183

大小:142.00 KB

页数:12页

时间:2019-06-16

丁浩轩prolog教学实习报告_第1页
丁浩轩prolog教学实习报告_第2页
丁浩轩prolog教学实习报告_第3页
丁浩轩prolog教学实习报告_第4页
丁浩轩prolog教学实习报告_第5页
资源描述:

《丁浩轩prolog教学实习报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、天津农学院计算机科学与信息工程系《Prolog语言》教学实习报告实习名称:Prolog程序的设计与开发专业班级:09级软件工程1班学号:0908054213姓名:丁浩轩指导教师:马国强成绩:2012年8月10目录1开发内容12开发目的13程序设计介绍13.1设计名称13.2设计目标13.3地图填色问题13.4画一棵树64总结与体会10101开发内容解决两个问题,地图填色问题、用Prolog程序画出一棵树,通过实验进行验证并上机调试运行,写出实习报告。2开发目的通过本次教学实习,加深对prolog软件的使

2、用与应用,并熟悉prolog语言,将某些问题用prolog程序得以实现,体会该程序的独特之处。对所学专业知识进一步消化、理解并系统化,锻炼和提高综合运用所学知识解决实际问题的能力。3开发设计介绍3.1设计名称Prolog程序的设计与开发3.2设计目标书写代码并运行程序得出预期结果。3.3地图填色问题3.3.1概述人人都熟悉地图,可是绘制一张普通的政区图,至少需要几种颜色,才能把相邻的政区或区域通过不同的颜色区分开来,就未必是一个简单的问题了。这个地图着色问题,是一个著名的数学难题。大家不妨用一张中国政区

3、图来试一试,无论从哪里开始着色,至少都要用上四种颜色,才能把所有省份都区别开来。所以,很早的时候就有数学家猜想:"任何地图的着色,只需四种颜色就足够了。"这就是"四色问题"这个名称的由来。103.3.2实验步骤1.创建一个console控制台程序2.建立之后,Bulid/Bulid一下3.修改main.pro3.3.3Prolog代码implementmainopencore,stdiodomainscolors=bule;yellow;red;green.neighbors=nb(colors,col

4、ors).map=neighbors*.classpredicatesaMap:(map)nondetermanyFlow.test:(map)procedureanyFlow.generateColor:(colors)multi(o).clausesclassInfo("main","fourcolors").generateColor(R):-R=bule;R=yellow;R=green;R=red;aMap([]).aMap([X

5、Xs]):-X=nb(C1,C2),not(C1=C2),aM

6、ap(Xs).classfactsn:integer:=010clausestest(L):-n:=0generateColor(A),generateColor(B),generateColor(C),generateColor(D),generateColor(E),generateColor(F),L=[nb(A,B),nb(A,C),nb(A,E),nb(A,F),nb(B,C),nb(B,D),nb(B,E),nb(B,F),nb(C,D),nb(C,F),nb(C,F)].n:=n+1,aM

7、ap(L),!;L=[].run():-console::init(),test(L),stdio::write("",n,"",L),_=stdio::readline().endimplementmaingoalmainExe::run(main::run).3.3.4运行结果103.3.5变种问题我们可以修改程序,看看到底有多少种填色方案。修改程序后代码如下implementmainopencore,stdiodomainscolors=blue;yellow;red;green.neig

8、hbors=nb(colors,colors).map=neighbors*.classpredicatesaMap:(map)nondetermanyFlow.test:(map)nondetermanyFlow.%multianyFlow.%procedureanyFlow.generateColor:(colors)multi(o).clausesclassInfo("main","fourcolors").generateColor(R):-R=blue;R=yellow;R=green;10R

9、=red.aMap([]).aMap([X

10、Xs]):-X=nb(C1,C2),not(C1=C2),aMap(Xs).classfactsn:integer:=0.k:integer:=0.clausestest(L):-n:=0,generateColor(A),generateColor(B),generateColor(C),generateColor(D),generateColor(E),generateColor(F),L=[

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。