Python猴子摘香蕉问题

Python猴子摘香蕉问题

房子里有一只猴子(即机器人,可在房间里任意活动:到处走动,推移箱子,攀登箱子等),初始位于a处。在b处上方的天花板上有一串香蕉,猴子想吃,但摘不到。房间的c处还有一个箱子,如果猴子站到箱子上,就可以摸着天花板。如图所示,对于上述问题,可以通过谓词逻辑表示法来描述知识。
要求通过python语言编程实现猴子摘香蕉问题的求解过程,即猴子在某一状态下(设猴子位置为a,箱子位置为b,香蕉位置在c),如何行动可摘取到香蕉。
在这里插入图片描述

i=0
def Monkey_go_box(x,y):
    global i
    i=i+1
    print('step:{},monkey从{}走到{}'.format(i,x,y))      #print('step:',i,'monkey从',x,'走到'+y)
def Monkey_move_box(x,y):
    global i
    i=i+1
    print('step:',i,'monkey把箱子从',x,'移动到'+y)
def Monkey_on_box():
    global i
    i=i+1
    print('step:',i,'monkey爬上箱子')
def Monkey_get_banana():
    global i
    i=i+1
    print('step:',i,'monkey摘到香蕉')
print('请用a,b,c来表示猴子箱子香蕉的位置:')
print('monkey\tbox\tbanana\n')
monkey=input('')
box=input('')
banana=input('')
if monkey!=box:
    Monkey_go_box(monkey,box)
if box!=banana:
    Monkey_move_box(box,banana)
Monkey_on_box()
Monkey_get_banana()

在这里插入图片描述

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有品位的小丑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值