用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…


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

相关推荐

  • centos 改动字符集为GB2312的方法[通俗易懂]

    centos 改动字符集为GB2312的方法

    2022年2月4日
  • kettle基础教程-kettle9教程「建议收藏」

    kettle基础教程-kettle9教程「建议收藏」一.安装部署1.JDK1.8安装及环境变量的配置https://blog.csdn.net/weixin_39549656/article/details/795406442.kettle9安装与启动kettle下载目录:https://sourceforge.net/projects/pentaho/files/kettle9.2下载地址:https://sourceforge.net/projects/pentaho/files/Pentaho-9.2/client-tool

    2022年5月23日
  • js判断字符串数组是否包含某个字符串_怎么判断数组有几个元素

    js判断字符串数组是否包含某个字符串_怎么判断数组有几个元素方法一:indexOf(item,start)Item:要查找的值;start:可选的整数参数,缺省则从起始位子开始查找。indexOf()返回元素在数组中的位置,如果没有则返回-1,该方法只能查找字符串,数字等,不能查找类或者数组或者NaN,如果想查找类或者数组,可以使用下面介绍的其他方法;vararr=[‘a’,’b’,’c’,’d’];console.log(arr.indexOf(‘b’)); //1console.log(arr.indexOf(‘ab’))

    2022年10月18日
  • Django(23)Django限制请求装饰器

    Django(23)Django限制请求装饰器前言有时候,我们想要限制访问的请求方法,比如我们希望用户只能通过get方式请求,post不允许,那么我们可以采用装饰器的方式,django已经为我们提供了内置的装饰器限制请求装饰器Django内

    2022年8月7日
  • Pytest(5)美化插件进度条pytest-sugar

    Pytest(5)美化插件进度条pytest-sugar前言在我们进行自动化测试的时候,用例往往是成百上千,执行的时间是几十分钟或者是小时级别。有时,我们在调试那么多用例的时候,不知道执行到什么程度了,而pytest-sugar插件能很好解决我们的痛点。

    2022年7月31日
  • 广东电信在线人工服务器,202.96.128.86广东电信DNS故障及解决方法

    广东电信在线人工服务器,202.96.128.86广东电信DNS故障及解决方法广东用户如果遇到能上QQ,但网页打不开,提示“找不到服务器”的现象,而且如果别人能访问,而你不能访问,多数情况下就是你的DNS解析故障造成的。解决这个问题比较有效的方法是换一个DNS服务器。下面是几个常用的广东电信DNS,广东的朋友如果遇到一些网页打不开时,可以更换下DNS看看。61.144.56.100广东省广州市电信61.144.56.101广东省广州市电信202.96.128.68广东…

    2022年7月11日

发表回复

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

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