Java老鼠走迷宫流程图_老鼠走迷宫(队列实现)
1.[文件]
Game.cpp ~ 2KB
下载(134)
// Game.cpp: implementation of the Game class.
//
//
#include "Game.h"
#include
#include
using namespace std;
char map[WIDTH][HEIGHT] ;
const char WAY = ' ';//路
const char WALL= '#';//墙
const char MOUSE = '&';//老鼠
const char DOOR = '>';//门
const char PASS = '.';//走过的路
const char DEAD_PASS='X';//死路
const int LEFT = 0;
const int RIGHT=1;
const int DOWN = 2;
const int UP =3;
//
// Construction/Destruction
//
Game::Game():mouse(0,2)
{
}
Game::~Game()
{
}
//启动游戏,初始化地图
void Game::init_map()
{
srand(time(NULL));
for(int i = 0 ; i
{
for(int j= 0 ; j
{
if(i==0 || i==WIDTH-1 || j==0 || j==HEIGHT-1)
map[i][j] = WALL;
else
map[i][j] = rand()%4==0?WALL:WAY;
}
}
map[0][2]=MOUSE;
map[WIDTH-1][HEIGHT-2]=DOOR;
}
//显示地图
void Game::show_map()
{
system("cls");
for(int i = 0 ; i
{
for(int j= 0 ; j
{
cout<< map[i][j];
}
cout<
}
}
//开始游戏
void Game::start()
{
int x,y;
while(1)//mouse.getX()!=WIDTH-1 &&mouse.getY()!=HEIGHT-2
{
x=mouse.getX();
y=mouse.getY();
map[x][y]=MOUSE;
show_map();
if((map[x][y+1]!=WALL && map[x][y+1]!=DEAD_PASS &&map[x][y+1]!=PASS)&& test_bound(x,y+1)==true)
{
map[x][y]=PASS;
mouse.goRight();
}
else if((map[x+1][y]!=WALL && map[x+1][y]!=DEAD_PASS&&map[x+1][y]!=PASS)&& test_bound(x+1,y)==true)
{
map[x][y]=PASS;
mouse.goDown();
}
else if((map[x][y-1]!=WALL && map[x][y-1]!=DEAD_PASS&&map[x][y-1]!=PASS)&& test_bound(x,y-1)==true)
{
map[x][y]=PASS;
mouse.goLeft();
}
else if((map[x-1][y]!=WALL && map[x-1][y]!=DEAD_PASS && map[x-1][y]!=PASS)&& test_bound(x-1,y)==true)
{
map[x][y]=PASS;
mouse.goUp();
}
else
{
map[x][y]=DEAD_PASS;
int rb=mouse.reBack();
if(rb==-1)
break;
}
if(mouse.getX()==WIDTH-1 && mouse.getY()==HEIGHT-2)
break;
}
if(mouse.getX()==WIDTH-1 && mouse.getY()==HEIGHT-2)
cout<
else
cout<
}
//测试坐标是否合法
bool Game::test_bound(int x , int y)
{
if(x>0 && x0 && y
return true;
return false;
}
Java老鼠走迷宫流程图_老鼠走迷宫(队列实现)相关推荐
- c 实现走迷宫流程图_求教c 迷宫流程图
代码如下不是很完善望大虾也能帮忙修改修改/*4.3.3源程序*/#include#include#include#include#include#defineN20/*迷宫的大小,可改... 代码如下 ...
- java 迷宫代码_老鼠走迷宫代码 JAVA
展开全部 //老鼠走迷宫程序 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Maze1 ...
- c 实现走迷宫流程图_[求助]:迷宫问题 流程图
得分:0 唉 没大大来帮一下吗 ----------------解决方案-------------------------------------------------------- #includ ...
- java中审核订单流程图_看95后java妹子横扫阿里,京东,小米,滴滴,美团等大厂,一份热腾腾的面经(最终入职阿里)...
内容目录 头条 美团 滴滴 京东 others 算法题 HR面 tips 自序 这次面试的公司有一点点多,主要是因为毕业后前两份工作找的都很草率,这次换工作就想着,emm,毕业三年了,该找个工作好好沉 ...
- 计算走线长度_高速走线长度的一些思考
图1-1 眼图示意图 随着高速信号的频率越来越高,对layout设计的挑战也越来越大,其中的挑战之一就是高速信号的长度限制,无论是串行还是并行总线,对线长的要求总的来说都是越来越严格,各总线对信号的长 ...
- java中审核订单流程图_「数据架构」数据流程图:实例-订餐系统
数据流图(DFD)提供了系统内信息流(即数据流)的可视化表示.通过绘制数据流程图,您可以了解由参与系统流程的人员提供并交付给他们的信息.完成流程所需的信息以及需要存储和访问的信息.本文以一个订餐系统为 ...
- java鬼吹灯搬山法杖_鬼吹灯昆仑迷宫技能搭配之搬山篇攻略心得
有的新手玩家可能对<鬼吹灯昆仑迷宫>相对复杂的技能搭配犯晕.小编下面整理了一下搬山职业的主流技能搭配套路,希望可以帮助新手玩家更好的入手. 下面所说的技能情况均以主角技能说明,伙伴的技能与 ...
- java程序设计(小时钟)流程图_数字电路课程设计--电子钟实验报告
一:要求 ①要有时钟显示功能,能够实现时.分.秒的显示 ②要有整点报时功能 ③要有设置时间功能. 二:流程图 三:主要部分的实现方案 1)秒脉冲电路:利用集成电路555定时器与电阻和电容组成多谐振荡器 ...
- java 栈和队列实现迷宫代码_使用两个队列实现一个栈
两个队列实现一个栈 栈的特点是后进先出,队列的特点是先进先出.使用两个队列模拟栈,实现栈的push,pop,top,empty 操作. 假设队列中均为数字,其中队列q1为操作队列,q2为辅助队列. p ...
最新文章
- 高亮提示、聚焦控件并滚动到浏览器中干好可以查看到该控件的位置
- top_k问题python解
- Stay hungry, Stay foolish---致所有迷茫的人
- C++longest palindromic subsequence最长回文子序列算法实现(附完整源码)
- mysql独立开发_独立开发一个 App 是一种怎样的体验?
- python turtle画四叶草的步骤_python turtle工具绘制四叶草的实例分享
- 设计模式之(四)抽象工厂模式(Abstract Factory)
- Bailian2710 数制转换(POJ NOI0113-01)【进制】
- How to Run Mac OS X in VirtualBox on Windows
- 考试系统分析对比考试系统哪个好
- css 图片放大1.2倍,什么是二倍图?怎样使用二倍图?
- How far away ? HDU - 2586 trajan算法lca
- find7刷Android,OPPO Find 7刷Color OS 2.0教程
- Android应用开发性能优化的知识点
- SEO工具脚本,Python百度下拉框关键词采集工具
- 筛法打印质数表【附:100000以内质数表】
- Web前端是什么?Web前端包括哪些技术?
- 管理QQ群,什么情况下适合用软件
- mbk文件导入到oracle,Oracle基于物化视图的远程数据复制
- 「诗云科技」获IDG资本领投数百万美元Pre-A轮融资,研发内容生成引擎Surreal Engine
热门文章
- android studio导入项目提示NO VARIANTS FOUND FOR ‘APP‘
- oracle索引的测试
- 海狮号水下机器人_SeaLion 海狮水下机器人ROV-JWFishers
- arduino-esp32:基于TFT-eSPI库实现触摸显示屏
- 2.4G、5GWiFi
- 航班管家获得1500万美元B轮融资
- Linux虚拟内存交换空间,Linux 添加 Swp 虚拟内存交换空间
- 即刻智能|2022【不忘初心 砥砺前行】年会盛典圆满落幕
- 浅论各种调试接口(JTAG、SWD、RDI、Jlink、Ulink、STlink)的区别
- window VPN连接不上问题?--- 解决