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

}

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 激励函数的作用之sigmoid

    激励函数的作用之sigmoid

  • redis集群主从复制原理_主从关系紫音

    redis集群主从复制原理_主从关系紫音Redis主从复制主从复制简介主从复制的概念主从复制的作用主从复制工作流程阶段一:建立连接阶段主从连接(slave连接master)第一种方式第二种方式第三种方式授权访问阶段二:数据同步阶段工作流程数据同步阶段master说明数据同步阶段slave说明阶段三:命令传播阶段命令传播阶段的部分复制服务器的运行id复制缓冲区复制缓冲区内部工作原理复制缓冲区主从服务器复制偏移量(offset)数据同步+命令传播阶段工作流程心跳机制心跳阶段注意事项主从复制常见问题引发频繁的全量复制1引发频繁的全量复制2频繁的网络中

  • 在linux中如何解压.tgz「建议收藏」

    在linux中如何解压.tgz「建议收藏」网上的方法,都不适合我这个粗人!总结一套本仙女的方法哈!比如仙女下载了一个.tgz文件到中然后首先:打开终端1,进入下载路径下,比如我的就是进入Downloads下。输入命令: cdDownloads2,解压到当前文件夹输入:tarzxvf 文件名.tgz-C./    比如我的是:tarzxvfsimple-examples.tgz-C./3,解压到指定文件夹下输入:tar …

  • PyCharm激活码永久有效PyCharm2020.1.5激活码教程-持续更新,一步到位「建议收藏」

    PyCharm激活码永久有效PyCharm2020.1.5激活码教程-持续更新,一步到位「建议收藏」PyCharm激活码永久有效2020.1.5激活码教程-Windows版永久激活-持续更新,Idea激活码2020.1.5成功激活

  • mybatis开发dao两种方法

    mybatis开发dao两种方法mybatis是一个支持普通SQL查询,存储过程和高级映射的优秀的持久层的框架,是apache下的顶级项目。mybatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。mybatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO映射成数据库中的记录。其中,开发dao有两种方法,一种原始的dao开发方法,程序员需要写dao接口和dao实现类。另一种…

  • 福利吧简约朴素网站地址发布页源码

    福利吧简约朴素网站地址发布页源码介绍:大方简约的地址发布页面HTML源码,可用于发布网站最新地址,留住用户必备方便找到回家的路,就单单一个html页面,需要的朋友下载吧!网盘下载地址:https://zijiewangpan.com/Lgv39T6zCtT图片:…

发表回复

您的电子邮箱地址不会被公开。

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