用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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

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

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