人工智能猴子摘香蕉代码_猴子妈妈有14个香蕉

人工智能猴子摘香蕉代码_猴子妈妈有14个香蕉只有简单的状态显示#include"iostream"usingnamespacestd;voidAT(charmonkeyplace,charboxplace){cout<<"AT(monkey,"<<monkeyplace<<")"<<endl;cout<&

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

只有简单的状态显示

#include "iostream"

using namespace std;
void AT(char monkeyplace, char boxplace)
{
    cout << "AT(monkey," << monkeyplace << ")" << endl;
    cout << "AT(box," << boxplace << ")" << endl;
}
void STATE(int on, int HB)
{
    if (on == 0)
        cout << "!ONBOX" << endl;
    else
        cout << "ONBOX" << endl;
    if (HB == 0)
        cout << "!HB" << endl;
    else
        cout << "HB" << endl;
}
char GOTO(char ST, char LT)
{
    if (ST != LT)
        return LT;
    else
        return ST;
}
void ACT(char monkey, char box, char banana, int on, int HB)
{
    if (monkey != banana)
    {
        cout << "=============GOTO(" << monkey << "," << box << ")===============>" << endl;
        monkey = GOTO(monkey, box);
        AT(monkey, box);
        STATE(on, HB);
        cout << endl;
    }//猴子移动至箱子处
    if (monkey != banana)
    {
        cout << "=============PUSH(" << monkey << "," << banana << ")===============>" << endl;
        monkey = GOTO(monkey, banana);
        AT(monkey, banana);
        STATE(on, HB);
        cout << endl;
    }//猴子搬运箱子至香蕉处
    if (monkey == banana && on == 0)
    {
        cout << "=============CLIMBBOX===============>" << endl;
        AT(monkey, banana);
        on++;
        STATE(on, HB);
        cout << endl;
    }//猴子爬上箱子
    if (monkey == banana && on == 1 && HB == 0)
    {
        cout << "=============GRASP===============>" << endl;
        AT(monkey, banana);
        HB++;
        STATE(on, HB);
        cout << endl;
    }//猴子摘香蕉
}

int main()
{
    char monkey, box, banana;
    int on = 0, HB = 0;
    cout << "猴子的位置:";
    cin >> monkey;
    cout << "箱子的位置:";
    cin >> box;
    cout << "香蕉的位置:";
    cin >> banana;
    cout << endl;
    cout << "=============开始===============>" << endl;
    AT(monkey, box);
    STATE(on, HB);
    cout << endl;//初始状态
    ACT(monkey, box, banana, on, HB);
    system("pause");//按任意键退出
    return 0;
}

第一次用这个博客编辑器 先搞个简单的试试怎么用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189283.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 成麻结账程序_成麻5元40满怎么算账

    成麻结账程序_成麻5元40满怎么算账1.0版预览地址:http://hudong.miaos.me/majiang/index.html2.0博客直通车:https://www.cnblogs.com/qinyulin/p/13566

    2022年8月2日
  • iOS8定位问题

    iOS8定位问题

    2021年9月9日
  • gulp pipe缓存_gulp使用教程

    gulp pipe缓存_gulp使用教程首先,gulp的源码里没有任何一部分是定义pipe的。gulp的pipe方法是来自nodejsstreamAPI的。gulp本身是由一系列vinyl模块组织起来的。pipe方法到底是什么呢?pipe跟他字面意思一样只是一个管道例如我有一堆文件var s=gulp.src(["fileA","fileB","fileC"])src方法实际上是’vinyl-fs’模…

    2022年11月1日
  • electron调用go_opencv scalar

    electron调用go_opencv scalarglub一般都是很轻量的编译。go太重了,改一小个部分,就编译的话,多数是编译失败。而且很消耗性能,还没想到完美的优化办法。暂时用个定时器监听2秒,停止1秒,如此循环,会减少些“无效”的编译varwatch=require(‘glob-watcher’);varexec=require(‘child_process’).exec;varsys…

    2022年10月25日
  • Quartz定时任务[通俗易懂]

    一、Quartz的核心概念1.任务jobjob就是想要实现的任务类,每一个job必须实现job接口,且实现接口中的excute()方法。2.触发器TriggerTrigger为你执行任务的触发器,可以设置特定时间执行该任务Trigger主要包含SimpleTrigger和CronTrigger两种3.调度器SchedulerScheduler为任务的调度器,它会将任务job及触发器…

    2022年4月18日
  • ssh从A免密码登陆到B实验

    ssh从A免密码登陆到B实验

    2021年9月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号