用python编写猴子吃桃问题_人工智能猴子摘香蕉

用python编写猴子吃桃问题_人工智能猴子摘香蕉该楼层疑似违规已被系统折叠隐藏此楼查看此楼#include#include#includeintW;/*W-猴子的水平位置*/intx;/*x-当猴子在箱子顶上时取x=1;否则取x=0*/intc;/*c-是香蕉正下方的地板位置*/intY;/*Y-箱子的水平位置*/intz;/*z-当猴子摘到香蕉时取z=1;否则取z=0*/intascll=25;voidGo…

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

Jetbrains全系列IDE稳定放心使用

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

int W; /*W

-猴子的水平位置

*/

int x; /*x

-当猴子在箱子顶上时取

x=1

;否则取

x=0*/

int c; /*c-

是香蕉正下方的地板位置

*/

int Y; /*Y

-箱子的水平位置

*/

int z; /*z

-当猴子摘到香蕉时取

z=1

;否则取

z=0*/

int ascll=25;

void Goto(){

/*(W,0,Y,z)————–>(U,0,Y,z)*/

/*

猴子从水平位置

W

走到箱子的水平位置

Y

1.

猴子在箱子的左边

(W

2.

猴子在箱子的右边

(W>Y)

3.

猴子在箱子上

(x=1

)

*/

int i;

printf(“\n 猴子从水平位置W(%d)走到箱子Y(%d)处……\n”,W,Y);

printf(“\n W x Y z\n”);

if(W<=Y){

for(i=W;i<=Y;i++){

if(i!=W)printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,i,x,Y,z);

}

}

else{

for(i=W;i>=Y;i–){

if(i!=W)printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,i,x,Y,z);

}

}

}

void PushBox(){

/*

猴子把箱子

(

箱子的水平位置

Y)

推到水平位置

c

(

香蕉正下方的地板位置

)

1.

箱子在香蕉的左边

(Y

2.

箱子在香蕉的右边

(Y>c)

*/

int i;

if(Y==c){

printf(“\n香蕉就在箱子的正上方……\n”);

}

else{

printf(“\n猴子把箱子(箱子的水平位置Y(%d))推到香蕉正下方的地板位置c(%d)\n”,Y,c);

}

printf(“\n W x Y z\n”);

if(Y<=c){

for(i=Y;i<=c;i++){

if(i!=Y)printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,i,x,Y,z);

}

}

else{

for(i=Y;i>=c;i–){

if(i!=Y)printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,i,x,Y,z);

}

}

W=c;

}

void ClimbBox(){

/*

猴子爬上箱顶

*/

printf(“\n猴子爬上箱顶……\n”);

printf(“\n W x Y z\n”);

printf(“State(%d,%d,%d,%d)\n”,W,x,Y,z);

x=1;

printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,W,x,Y,z);

}

void Grasp(){

/*

猴子摘到香蕉

*/

printf(“\n猴子摘到香蕉……\n”);

printf(“\n W x Y z\n”);

printf(“State(%d,%d,%d,%d)\n”,W,x,Y,z);

z=1;

printf(” %c\n”,ascll);

printf(“State(%d,%d,%d,%d)\n”,W,x,Y,z);

}

int main(){

int i=0,select,flag=0;

while(true){

x=0;

z=0;

if(i!=0){

printf(“\n”);

system(“Pause”);

system(“cls”);

}

printf(“**********信电学院 计本 二班 郁春菊 20060502103********\n\n”);

for(i=1;i<=10;i++){

if(i==1||i==10){

printf(“———————————————————-\n”);

}

else if(i==3){

printf(“| 人工智能之猴子与香蕉 |\n”);

}

else if(i==6){

printf(“| 1.用户初始化参数 |\n”);

printf(“| 2.系统随机初始化参数 |\n”);

printf(“| 3.退出系统 |\n”);

}

else if(i==9){

printf(“|***************** 人工智能算法 ****************|\n”);

}

else printf(“| |\n”);

}

/* printf(“State:

初始状态

state(W,x,Y,z)”);*/

printf(“请选择(操作:1/2/3) :”);

scanf(“%d”,&select);

if(select == 3){

system(“cls”);

return 0;

}

printf(“\n”);

system(“Pause”);

system(“cls”);

if(select==1){

printf(“\n——————–用户初始化参数——————–\n”);

printf(“\n请输入猴子的水平位置W: “);

scanf(“%d”,&W);

printf(“\n请输入箱子的水平位置Y: “);

scanf(“%d”,&Y);

printf(“\n请输入香蕉正下方的地板位置c: “);

scanf(“%d”,&c);

}

else if(select == 2){

flag=1;

srand(time(NULL));

printf(“\n——————–系统随机初始化参数——————–\n”);

W=rand()%10;

printf(“\n猴子的水平位置W: %d\n”,W);

Y=rand()%10;

printf(“\n箱子的水平位置Y: %d\n”,Y);

c=rand()%10;

printf(“\n香蕉正下方的地板位置c: %d\n”,c);

}

if(W==Y){

if(flag==0){

printf(“\n猴子是否在箱子顶上?(x-当猴子在箱子顶上时取x=1;否则取x=0) x= “);

scanf(“%d”,&x);

if(x!=0){

x=1;

}

}else{

x=rand()%2;

printf(“\n猴子是否在箱子顶上?(x-当猴子在箱子顶上时取x=1;否则取x=0) x= %d\n”,x);

}

}

if(x==1&&W==c){

/*

猴子在箱子上

(x=1),

而且香蕉就在头顶

(W=c)*/

printf(“\n猴子在箱子上(x=1),而且香蕉就在头顶(W=c)……\n”);

}

else if(x==1){

/*

猴子在箱子上

(x=1),

但香蕉不在头顶

(W=c)*/

printf(“\n猴子从箱子上跳下……\n”);

x=0;

/*

猴子与箱子必须在同一位置上,并且,猴子不是在箱子顶上

*/

PushBox();

/*

猴子和箱子应当在同一位置上,而且猴子不在箱顶上

*/

ClimbBox();

}

else {

/*

猴子从水平位置

W

走到箱子的水平位置

Y*/

Goto();

/*

猴子与箱子必须在同一位置上,并且,猴子不是在箱子顶上

*/

PushBox();

/*

猴子和箱子应当在同一位置上,而且猴子不在箱顶上

*/

ClimbBox();

}

Grasp();

printf(“\n猴子正在吃香蕉……\n\n”);

}

return 0;

}

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

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

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


相关推荐

  • dpdk 性能_第二系列什么意思

    dpdk 性能_第二系列什么意思首先,DPDK和内核网络协议栈不是对等的概念。DPDK只是单纯的从驱动拿数据,然后组织成数据块给人用,跑在用户态。功能相当于linux的设备无关接口层,处于socket之下,驱动之上。只不过linux协议栈的这部分在核心态。你说的包处理器,很多时候是不用linux内核协议栈的,而是用专用包处理程序,类似于DPDK加上层应用处理。通常会有些硬件加速器,包处理效率更高些。缺点是一旦用不上某些功能

    2022年9月20日
    2
  • JAVA——数组截取——调用库中方法

    JAVA——数组截取——调用库中方法1,使用Java类库中的方法System.arraycopy2,使用Java类库中的方法java.util.Arrays.copyOf3,重写myCopy(一)使用.arraycopy方法使用方法:System.arraycopy(源数组名称,源数组开始点,目标数组名称,目标数组开始点,拷贝长度);说明:将arr1数组中的一部分替换成arr2数组中的一部分可以从任意位置开始截取…

    2022年6月9日
    166
  • 1.Python简介&&开发环境配置&&工具准备

    1.Python简介&&开发环境配置&&工具准备Python 第一课 Python 简介 Python 开发环境配置 amp amp pycharm 开发工具配置 各种 Python 解释器一览

    2025年11月22日
    2
  • Solaris 10网络服务

    Solaris 10网络服务

    2021年7月23日
    86
  • stuffing list_difflib

    stuffing list_difflibhttps://blog.csdn.net/heimu24/article/details/535813621.2创建图片列表清单这一步我们需要创建自己图片数据集的清单txt文件,这里提供两种方法。方法1:创建一个sh文件cd~/caffe-master/sudogeditexamples/images/create_filelist.shsudo就是获取管理员权限,gedit…

    2022年9月29日
    2
  • Openstack 二次开发之:在windows 环境下编译Openstack-java-sdk

    Openstack 二次开发之:在windows 环境下编译Openstack-java-sdk

    2022年1月31日
    46

发表回复

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

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