边改边做模型设计智能贪吃蛇
来源:互联网 发布:网络金融的发展研究 编辑:程序博客网 时间:2024/06/10 01:15
软件开发模型分为多种,智能蛇的框架可以大致参照上一篇博客贪吃蛇。
那么现在用边改做做的方法去优化智能蛇。
缺陷1:输入上下左右后还需要再按回车。
优化:将输入的getchar变成getch函数(头文件为conio.h)
缺陷2:智能蛇就是不需要输入,自行判断往哪走。
那么就用距离差来判断。
if(head.x-food[0]>0)//食物与蛇头距离差 head.dir='w';else if(head.x-food[0]<0) head.dir='s';else if(head.y-food[1]>0) head.dir='d';else if(head.y-food[1]<0) head.dir='a';
每走一步判断一次位置,然后判断一次方向。
只要在蛇头方向改变时将位置信息录入ticks里面。
缺陷3:行进过程中极有可能会撞上蛇身。
这个问题就难解决了,基本是无解的。先进行一个小优化。
int judge=0;//判断行进路上纵向位置是否有阻if(head.x-food[0]>0){ for(food[0]++;food[0]<head.x;food[0]++) { if(screen[food[0]][head.y]!=' ') { judge=1; break; } } if(!judge) { head.dir='w'; }}else if(head.x-food[0]<0){ for(food[0]--;food[0]<head.x;food[0]--) { if(screen[food[0]][head.y]!=' ') { judge=1; break; } } if(!judge) { head.dir='s'; }}//横轴同上,就不列出
此时就可以在一定程度避免相撞了。但还是无法避免惨剧的发生~~~
阅读全文
0 0
- 边改边做模型设计智能贪吃蛇
- 智能贪吃蛇设计算法
- 贪吃蛇系列开篇----设计智能贪吃蛇小游戏
- “智能”贪吃蛇
- 智能贪吃蛇
- 贪吃蛇之智能蛇
- C++贪吃蛇设计
- 贪吃蛇游戏设计
- 贪吃蛇的进阶——智能贪吃蛇
- 贪吃蛇智能版(中级)
- 贪吃蛇智能版(高级)
- 贪吃蛇智能版(专家)
- 贪吃蛇智能版(初级)
- 贪吃蛇游戏源码设计
- 贪吃蛇游戏(java);设计;
- 关于arm7贪吃蛇设计
- 贪吃蛇(关卡设计)
- 设计简单的贪吃蛇
- POJ
- javascript_01_简单介绍
- 推荐系统实践---第二章:利用用户行为数据
- 计算机网络复习总结之网络层(一)
- 一个表单上有多个submit时,如何控制回车键触发哪个submit
- 边改边做模型设计智能贪吃蛇
- 高斯模糊
- 例题10-3 选择与除法(Choose and Divide,UVa10375)
- 6N137 信号隔离 验证与设计
- YUV与RGB格式转换
- 关于JAVA文件都在没问题,没有错误提示波浪线,但编译时候提示找不到对应包的问题
- SpringMVC下访问Html文件
- 2017/12/24
- 【备忘】最新Python3网络爬虫实战案例高清视频教程