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


相关推荐

  • 各种聚类算法(原理+代码+对比分析)最全总结「建议收藏」

    各种聚类算法(原理+代码+对比分析)最全总结「建议收藏」序言还是要持续总结,持续积累。一、聚类的目标使同一类对象的相似度尽可能地大;不同类对象之间的相似度尽可能地小。二、聚类算法分类1.基于划分给定一个有N个元组或者纪录的数据集,分裂法将构造K个分组,每一个分组就代表一个聚类,K<N。特点:计算量大。很适合发现中小规模的数据库中小规模的数据库中的球状簇。算法:K-MEANS算法、K-MEDOIDS算法、CLARANS算法2….

    2022年6月8日
    54
  • 字面量(笑笑语法)

    字面量(笑笑语法)

    2022年1月23日
    38
  • 图片如何保存在服务器(PHP生成一张图片并保存到服务器)

    自己没有服务器,但是又想把自己的照片放到网上怎么办?今天在写博客的时候灵机一现,这个平台编辑文章的时候不就可以上传图片吗!而且还有图片的链接,哈哈!也算是个小彩蛋吧~~…

    2022年4月14日
    106
  • 左值和右值的理解[通俗易懂]

    关于左值和右值的理解:①从位置来讲:eg:a=b;a在左边,a为左值,那在右边的b就是右值(前提是语句合法,比如说a+25=b;则不合法) ②深层次讲:左值(L_value,L理解为Location)为地址值右值(R_value,R理解为Read)为数据值eg:a=b;即将b(右值–数据值)赋值给a(左值–地址值) ③再通俗一点讲:左值就是…

    2022年4月6日
    71
  • python安装库的方法「建议收藏」

    python安装库的方法「建议收藏」目录前言:??python安装库方法大全(以安装pygame库为例)?方法一、在pycharm内部直接安装【最简单的方法(直接上图)】?方法二、(在终端安装库)安装:✨1、使用pipinstall+(库的名称)直接安装✨2、使用国内镜像安装(加了镜像地址速度杠杠滴快??)​​​?​​​​​​​?方法二报以下错怎么办?​​​​​​​?小结方法一和方法二结语前言:对于新手来说,库的安装是遇到的第一个挑战,我也入了很多坑,所以想出一期安装库的步骤作者希望:.

    2022年10月2日
    0
  • 腾讯群关系数据泄漏下载什么软件_云和数据/和华为之间的关系

    腾讯群关系数据泄漏下载什么软件_云和数据/和华为之间的关系腾讯群关系数据泄漏(可根据QQ号获得该人姓名经历等详细信息),外界已经有下载地址了,迅雷上就可以看到很多用户数据泄漏,可能是早期的漏洞被利用抓取的,可以根据QQ查一个人的姓名,年龄,关系网甚至从业经历等等

    2022年9月1日
    0

发表回复

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

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