文档详情

prolog实验报告—周俊雯.doc

发布:2017-04-05约2.91千字共4页下载文档
文本预览下载声明
北邮人工智能实验报告 prolog 班级:2011211307 姓名:周俊霞 日期:2014-05-11 1、实验题目: 用PROLOG完成以下系统的编写。給出代码和一个运行实例,辨别云的类型。 低纬度云是那些高度等于或低于6000英尺高的云,包括层云和层积云; 中纬度云是高度在6000—20000英尺的云,包括高层云、高积云和乱层云; 高纬度云是那些高于20000英尺的云,包括卷云、卷层云和卷积云。 积云和积雨云可以从低到高纬度之间分布; 层云、高层云、卷层云、积云和积雨云呈大圆锥状; 层积云、高积云、乱层云、卷积云象平滑绵延的被单; 卷云有纤细的外观,象一簇簇头发; 乱层云和积雨云是含雨云,呈黑灰色。 2、实验要求: 编写一个程序辨别云的类型,程序的输入是描述云特征的事实,输出为已辨别的云的类型。*写出一个运行实例(输入、输出)。 3、源代码: /***************************************************************************** Copyright (c) My Company Project: CLOUD FileName: CLOUD3.PRO Purpose: No description Written by: Visual Prolog Comments: ******************************************************************************/ include cloud.inc domains Cloud_x,Type,Shape,Color,What = symbol Hight = integer facts % 云,有云的名字,高度,形状,颜色四个属性; cloud(Cloud_x,Hight,Shape,Color) predicates nondeterm is(Cloud_x,Type) clauses %此处为某个已知的云,有云的名字,高度,形状,颜色四个属性; cloud(cloud_lily,7000,big_cone,blackgray). %判断某云是否为~~云;如is(Cloud_x,cengyun)判断某云是否为层云 is(Cloud_x,cengyun):-cloud(Cloud_x,Hight,Shape,Color),Hight=6000,Shape=big_cone,Color=white. is(Cloud_x,cengjiyun):-cloud(Cloud_x,Hight,Shape,Color),Hight=6000,Shape=sheets,Color=white. is(Cloud_x,gaocengyun):-cloud(Cloud_x,Hight,Shape,Color),Hight=6000,Hight=20000,Shape=big_cone,Color=white. is(Cloud_x,gaojiyun):-cloud(Cloud_x,Hight,Shape,Color),Hight=6000,Hight=20000,Shape=sheets,Color=white. is(Cloud_x,luancengyun):-cloud(Cloud_x,Hight,Shape,Color),Hight=6000,Hight=20000,Shape=sheets,Color=blackgray. is(Cloud_x,juanyun):-cloud(Cloud_x,Hight,Shape,Color),Hight20000,Shape=hair,Color=white. is(Cloud_x,juancengyun):-cloud(Cloud_x,Hight,Shape,Color),Hight20000,Shape=big_cone,Color=white. is(Cloud_x,juanjiyun):-cloud(Cloud_x,Hight,Shape,Color),Hight20000,Shape=sheets,Color=white. is(Cloud_x,jiyun):-cloud(Cloud_x,_,Shape,Color),Shape=big_cone,Color=white. is(Cloud_x,j
显示全部
相似文档