z1.综合应用“深度优先搜索”、“宽度优先搜索”、“启发式搜索”这三种人工智能搜索技术的基本知识以及程序设计的相关知识。
z2.通过设计一个八数码问题求解程序,学习、了解状态空间搜索的思想,进一步加深对人工智能课程相关启发式搜索的理解。
z实验内容1.针对八数码问题,在Windows环境下用C/C++语言(Java语言)实现几种搜索算法(最好是图形界面):y深度优先搜索P23y宽度优先搜索P24y启发式搜索算法(h1(n)=W(n)“不在位”的将牌数)P28y启发式搜索算法(h2(n)=P(n)将牌“不在位”的距离和)P40y启发式搜索算法(h3(n)=h(n)=P(n)+3S(n))P462.随机产生或手动输入初始状态,对于同一个初始状态,分别用上面的5种方法进行求解,并对比结果
2024/3/31 7:24:01 7.25MB 八数码
1
´问题描述:码头仓库是划分为n×m个格子的矩形阵列。
有公共边的格子是相邻格子。
当前仓库中有的格子是空闲的;
有的格子则已经堆放了沉重的货物。
由于堆放的货物很重,单凭仓库管理员的力量是无法移动的。
仓库管理员有一项任务,要将一个小箱子推到指定的格子上去。
管理员可以在仓库中移动,但不能跨过已经堆放了货物的格子。
管理员站在与箱子相对的空闲格子上时,可以做一次推动,把箱子推到另一相邻的空闲格子。
推箱时只能向管理员的对面方向推。
由于要推动的箱子很重,仓库管理员想尽量减少推箱子的次数。
´编程任务:对于给定的仓库布局,以及仓库管理员在仓库中的位置和箱子的开始位置和目标位置,设计一个解推箱子问题的分支限界法,计算出仓库管理员将箱子从开始位置推到目标位置所需的最少推动次数。
´数据输入:由文件input.txt提供输入数据。
输入文件第1行有2个正整数n和m(1<=n,m<=100),表示仓库是n×m个格子的矩形阵列。
接下来有n行,每行有m个字符,表示格子的状态。
S表示格子上放了不可移动的沉重货物;
w表示格子空闲;
M表示仓库管理员的初始位置;
P表示箱子的初始位置;
K表示箱子的目标位置。
´结果输出:将计算出的最少推动次数输出到文件output.txt。
如果仓库管理员无法将箱子从开始位置推到目标位置则输出“Nosolution!”。
输入文件示例输出文件示例input.txtoutput.txt
2024/3/30 21:20:28 68KB 推箱子 算法 VC
1
表达式计算是实现程序设计语言的基本问题之一,也是栈的应用的一个典型例子。
设计一个程序,演示用算符优先法对算术表达式求值的过程。
基本要求:以字符序列的形式从终端输入语法正确的、不含变量的整数表达式。
利用教科书表3.1给出的算符优先关系,实现对算术四则混合运算表达式的求值,并仿照教科书的例3-1演示在求值中运算符栈、运算数栈、输入字符和主要操作的变化过程。
测试数据:3*(7-2);8;1+2+3+4;(((6+6)*6+3)*2+6)*2;(20+2)*(6/2);
2024/3/25 20:06:28 3KB 算术表达式求值
1
设计一个实用的小型通讯录管理系统,用文件来存储学生的姓名,学号,生日,QQ等信息,完成对信息的添加,删除,查询,显示所有信息,退出等操作。
2024/3/23 5:49:14 2.86MB 基于java和Access的通讯录实现
1
词法分析设计、编制并调试一个词法分析程序,加深对词法分析原理的理解,针对表达各类词语的一组正规表达式,设计一个确定化的最简的有限自动机,对输入的符号串进行单词划分及词类识别。
1
为LINUX设计一个简单的二级文件系统。
要求做到以下几点:1、 可以实现下列几条命令Login 用户登录Dir 列文件目录Create 创建文件Delete 删除文件Open 打开文件Close 关闭文件Read 读文件Write 写文件2、列目录时要列出文件名、物理地址、保护码和文件长度。
3、源文件可以进行读写保护。
2024/3/9 6:41:04 18KB 文件系统
1
1、 设计一个实现任意长的整数进行四则运算的程序。
2、 输入和输出形式是按中国对于长整数的表示习惯,每四位一组,组间用逗号隔开,长整数位数没有上限,以分号结束长整型数据的输入。
3、 程序执行的命令包括:1)、输入长整数1;
2)、输入长整数2;
3)、输入执行的运算符;
4)、计算并输出结果;
5)、结束。
4、测试数据:(以加法为例)(1)、0;0;+;应输出“0”。
(2)、-2345,6789;-7654,3211;+;应输出“-1,0000,0000”。
(3)、-9999,9999;1,0000,0000,0000;+;应输出“9999,0000,0001”.(4)、1,0001,0001;-1,0001,0001;+;应输出“0”.(5)、1,0001,0001;-1,0001,0000;+;应输出“1”。
(6)、-9999,9999,9999;-9999,9999,9999;+;应输出“-1,9999,9999,9998”.(7)1,0000,9999,9999;1;+;应输出“1,0001,0000,0000”.
2024/3/8 4:34:04 253KB 长整数 四则运算
1
学生管理系统(★★★)使用下面的数据,用C设计一个简单的学籍管理系统,实现出最基本的功能。
学生基本信息文件(A.TXT)由以下内容:学号姓名性别宿舍号码电话号码01张成成男5018773211102李成华女1018772311203王成凤女1018772311204张明明男5028773433305陈东男5018773211106李果男5028773433307张园园女10287756122……...…………..学生成绩基本信息文件(B.TXT)有以下内容:学号课程编号课程名称学分平时成绩实验成绩卷面成绩综合成绩实得学分01A01大学物理366788202B03高等数学478-19001B03高等数学445-18802C01VF3657666…….……….....…功能要求及说明:(1)数据录入及插入功能:对A..TXT和B.TXT进行数据录入,只录入每个学生的学号、课程编号、课程名称、学分、平时成绩、实验成绩、卷面成绩共7个数据.综合成绩、学分由程序根据条件自动运算。
并且最后也可插入学生数据。
综合成绩的计算:如果本课程的实验成绩为-1,则表示无实验,综合成绩=平时成绩*30%+卷面成绩*70%;如果实验成绩不为-1,表示本课程有实验,综合成绩=平时成绩*15%+实验成绩*.15%+卷面成绩*70%.实得学分的计算:采用等级学分制.综合成绩在90-100之间,应得学分=学分*100%综合成绩在80-90之间,应得学分=学分*80%综合成绩在70-80之间,应得学分=学分*75%综合成绩在60-70之间,应得学分=学分*60%综合成绩在60以下,应得学分=学分*0%(2)显示功能:要求可显示原A、B文件中的内容,并且插入信息后还可显示新内容。
(3)删除功能:当在A.TXT中删除一个学生时,自动地在B.TXT中删除此人所有信息,并显示输出结果。
(4)排序功能:能实现选择按综合成绩或实得学分升序或降序排序并显示数据。
2024/3/6 2:20:50 90KB 学生管理 完整代码 详细 VC++
1
题目设计一个ALU运算器,该部件包括五个输入端A、B、C、S1、S0和两个输出端F、R。
实现功能如下所示输入端S1 输入端S0 功能0 0 实现R=A+B,如果溢出则F=1,否则F=00 1 实现R=A-B,如果溢出则F=1,否则F=01 0 测试A=0,如果A=0,且C=0,则F=0,否则F=11 1 测试A=B,如果A=B,且C=0,则F=0,否则F=1设计思路根据上表的描述,可以定义真值表,根据真值表将S1S0四种情况下分别画出相应的F和R的AB关于C的卡诺图,由此可以分别推算出F和R的逻辑表达式,根据此表达式便可以画出对应的数字逻辑电路。
2024/3/4 12:16:44 93KB 硬件课程设计 仿真软件 报告
1
一元多项式计算器设计一个一元多项式的计算器,功能包括(1)输入并建立多项式(一个多项式最多不超过20项),可以从文件中读取相关数据;
(2)输出多项式,输出形式可以是图形方式,也可以是文本方式;
(3)实现两个多项式相加,并输出和多项式;
(4)实现两个多项式相减,并输出差多项式;
(5)实现两个多项式相乘,并输出乘积多项式;
(6)计算并输出多项式在指定x处的值。
2024/2/29 9:26:57 894KB C++ 一元多项式
1
共 518 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡