import random
# 全局变量i
i = 0
monkey = []
box = []
banana = []
monbox = []
getit = []def Monkey_goto(A):global ii = i + 1if A == -1:print("Monkey go to A")monkey[i] = -1elif A == 0:print("Monkey go to B")monkey[i] = 0elif A == 1:print("Monkey go to C")monkey[i] = 1else:print("parameter is wrong")def move_box(A):global ii = i + 1if A == -1:print("monkey move box to A")monkey[i] = -1box[i] = -1elif A == 0:print("monkey move box to B")monkey[i] = 0box[i] = 0elif A == 1:print("monkey move box to C")monkey[i] = 1box[i] = 1else:print("parameter is wrong")def climb_onto_box():global ii = i + 1monbox[i] = 1print("Monkey climb onto the box")def climbdown():global ii = i + 1monbox[i] = 0print("Monkey climb down from the box")def Monkey_get_banana():global igetit[i] = 1print("Monkey reach the banana")def nextstep():global im: int = 0j: intif i >= 150:print("%s  \n", "steplength reached 150,have problem ")returnwhile getit[i] == 1:print("Press any key to continue \n")# getchar(); # / * to save screen for user, press any key toreturnj = i + 1if box[i] == monkey[i] and box[i] == banana[i]:if monbox[i] == 0:climb_onto_box()Monkey_get_banana()nextstep()else:Monkey_get_banana()nextstep()elif box[i] == monkey[i] and box[i] != banana[i]:if monbox[i] == 0:move_box(banana[i])nextstep()else:climbdown()nextstep()elif box[i] != monkey[i] and box[i] == banana[i]:Monkey_goto(box[i])nextstep()elif box[i] != monkey[i] and box[i] != banana[i]:Monkey_goto(box[i])nextstep()if __name__ == '__main__':n: int = 0a: int = random.randint(-1, 1)b: int = random.randint(-1, 1)c: int = random.randint(-1, 1)d: int = 0e: int = 0print("初始位置:")print("monkey:", a)print("box:", b)print("banana:", c)print("monbox:", d)while n < 150:monkey.append(a)box.append(b)banana.append(c)monbox.append(d)getit.append(e)n = n + 1nextstep()

简单实验,pthon。

主要是通过数组以及全局变量i

人工智能实验——猴子摘香蕉python相关推荐

  1. 人工智能实验 猴子摘香蕉

    题目意思: 猴子定义了4个状态  空手移动,推箱子,爬箱子,摘香蕉 用 (w,x,y,z)描述 w定义了猴子位置 x为1表示猴子在箱子上,0表示不在箱子上 y表示箱子位置 z为1表示猴子摘到香蕉(结束 ...

  2. JAVA语言写的人工智能小实验——猴子摘香蕉

    背景简介/问题描述 一个房间里,天花板上挂有一串香蕉,有一只猴子可在房间里任意活动(到处走动,推移箱子,攀登箱子等).设房间里还有一只可被猴子移动的箱子,且猴子登上箱子时才能摘到香蕉,问猴子在某一状态 ...

  3. C#编写简单的人工智能课程的实验-猴子摘香蕉

    1.实验内容 用C#,编写完成了使用者分别输入猴子.香蕉.箱子所在的位置,输出完整的猴子摘香蕉的过程. 2.大致逻辑 首先由使用者输入猴子.箱子和香蕉所在的位置,首先判断猴子和箱子是否在同一位置,若不 ...

  4. 人工智能程序——猴子摘香蕉(C语言)

    问题说明: 房间内有一只猴子,一个箱子和一个挂在天花板上的香蕉.三者的位置如下图所示: 初始状态:三者在输入的初始位置,猴子手上无香蕉,猴子不在箱子上. 目标状态:三者均在香蕉对应的位置,猴子手上有香 ...

  5. 人工智能算法 猴子摘香蕉

    只有简单的状态显示 #include "iostream"using namespace std; void AT(char monkeyplace, char boxplace) ...

  6. 用python语言实现人工智能猴子摘香蕉的问题_人工智能实验报告大全:猴子摘香蕉问题的VC编程实现等八次.docx...

    人工智能课内实验报告(8次)学 院: 自动化学院 班 级: 智能1501 姓 名: 刘少鹏(34) 学 号: 目 录课内实验1:猴子摘香蕉问题的VC编程实现--------1课内实验2:编程实现简单动 ...

  7. 用python语言实现人工智能猴子摘香蕉的问题_人工智能实验报告大全:猴子摘香蕉问题的VC编程实现等八次 -...

    人工智能课内实验报告 (8次) 学 院:自动化学院 班 级: 智能1501 姓 名: 刘少鹏(34) 学 号:06153034 目 录 课内实验1:猴子摘香蕉问题的VC编程实现????????1 课内 ...

  8. 实验1:猴子摘香蕉问题的Python编程实现

    实验目的 (1)熟悉谓词逻辑表示法; (2)掌握人工智能谓词逻辑中的经典例子--猴子摘香蕉问题的编程实现. 实验内容 房子里有一只猴子(即机器人),位于a处.b处上方的天花板上有一串香蕉,猴子想吃,但 ...

  9. 【C++】人工智能实验一 猴子摘香蕉/传教士与野人(含完整代码与状态迁移图)

    文章目录 一.猴子摘香蕉问题 1.问题描述 2.解题思路 3.实验结果及分析 实验结果一 实验结果二 实验结果三 4.实验结果 5.实验代码 二.传教士(牧师)与野人问题 1.问题描述 2.实验步骤 ...

最新文章

  1. 关于 智能指针 的线程安全问题
  2. django学习第77天Django框架ORM
  3. 不要再次进行阅读的计算机论文与理由(持续更新中)
  4. go token验证_registry v2 解析以及如何实现token验证
  5. spring cloud feign 上传文件报not a type supported by this encoder解决方案
  6. 玩转未来科技感!高端电商海报设计素材
  7. 早晚我要把它们都干掉!!!!!!!
  8. 不购买2021新款MacBook Pro的理由
  9. Android 编程下 ListView 和 CheckBox 混合使用时的常见问题
  10. linux加载显卡驱动模块,linux怎样加载显卡驱动,急,在线等
  11. oracle学习札记72
  12. python气象学_Python气象绘图教程(十)
  13. numpy 之average
  14. 图像处理之计算二值连通区域的质心
  15. 如何用c语言对隐函数求导,隐函数求导的方法
  16. 某代工大厂的勒索病毒处理案例
  17. Python tkinter Text 多行文本框变化事件
  18. java 序列是什么意思_java 中的序列化是什么意思?有什么好处?
  19. 电商网站如何推广自己呢?
  20. python在化学中的应用_python化学库

热门文章

  1. 从2300块月薪的女工,到年薪80万的程序员,我花了10年
  2. Sysinternals Suite Tools 简介
  3. 【成为博客专家】大数据面试题
  4. 淘宝推出了定制版本的 JVM
  5. Unity中鼠标的交互事件
  6. 安卓期末作业-仿外卖app-简单app(附下载资源)
  7. 一图文带您认识磁编码器
  8. 2014(马年)学年总结
  9. JavaScript Web API第五天
  10. 百度地图显示服务器已满,百度地图APP启动次数居首 生活服务深得用户青睐