摇摆游戏攻略网

关闭导航
首页 > 冒险生存 > 游戏攻略

一个六边形扫雷的算法!用java实现

整理:yaobaiwang.com 时间:03月28日

[扫雷的规则与技巧是什么]扫雷的规则与技巧是什么:扫雷规则是,首先随便在上面点一个小格子,就会出现一个小块,上面显示的数字就代表周围八个格子中有几个雷,判断出雷插旗即可,将所有雷找到即为胜利。技巧是...+阅读

一个六边形扫雷的算法!用java实现

扫雷是八个边吧?

用链表,初始化的时候每颗雷都以自己为中心,指向其他雷

class Mine

{

bool ismine;

Mine up;

Mine down;

Mine left;

Mine right;

Mine leftup;

Mine rightup;

Mine leftdown;

Mine rightdown;

}

void init()

{

Mine myMine[10][10];

for(int x=0;x<10;x++)

{

for(int y=0;y<10;y++)

{

//自己判断一下边缘,比如x=0时,左边和上边没有雷

myMine.left = myMine[x-1];//左

myMine.up = myMine[y-1];//上

myMine.rightup=myMine[y-1].right;

。。。。

。。。。

}

}

myMine.right.ismine = true;

myMine.left.ismine=true;

if(myMine.right.ismine == true){

。。。

。。。

}

}

扫雷点到空格时的算法

从手工点开的这个空格进行处理,按上右下左或你自己定义的一个顺序来判断相应位置的格式是否是空格且未被点开,如果不是,则跳过,如果是,则将其自动点开,同时把这几个位置加入队列后续处理。简单的流程图示意:当前位置是空白位置?----否--->非空白的处理 | | 是 | V 加入队列 | V+--->队列为空?-------->是--->结束| || |否| || V| 第一个元素出队| || V| 点开该元素所指的位置| || V| 上左下右的位置如果是空白且未点开则入队| |--------+上面是非递归的方案,递归方案则更容易了:伪代码算法描述如下:Click(pos) // 点开 pos 这个位置{ // IsClicked() 判断是否是已经点开的格子 if (IsClicked(pos)) return; // IsBlank() 判断是否是空白格子 if (! IsBlank(pos)) { 点开非空白格子的处理 } // 下面是点开空白格子的处理 ClickBlank(pos);}ClickBlank(pos){ if (! IsBlank(pos)) rerurn; if (IsClicked(pos)) return; // 下面对四个方向的格子进行自动点开 // 你需要计算四向的格子位置,无效的直接返回 ClickBlank(pos上面的格子); ClickBlank(pos右面的格子); ClickBlank(pos下面的格子); ClickBlank(pos左面的格子);}...

哪位大侠用vb设计一扫雷游戏或计算器

吧 =检举Public a, b As Double Public CalKey As String Private Sub Form_Load() Text1.Text = 0 End Sub Private Sub Command1_Click(Index As Integer) Text1.Text = Trim(Text1.Text) If Text1.Text = "0" Then Text1.Text = "" If Index= 1 Then Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1) ElseIf Index = 12 Then Text1.Text = 0 ElseIf Index = 13 Then Text1.Text = -Val(Text1.Text) End If End Sub Private Sub Command3_Click(Index As Integer) a = Val(Text1.Text) Select Case Index Case 0 CalKey = "+" Case 1 CalKey = "-" Case 2 CalKey = "*" Case 3 CalKey = "/" Case 4 CalKey = "%" Call Command4_Click Case 5 CalKey = "sqr" Call Command4_Click Case 6 CalKey = "sin" Call Command4_Click Case 7 CalKey = "cos" Call Command4_Click End Select If Index= 0 Then Text1.Text = Sqr(a) Else Text1.Text = "" MsgBox "二次方根,输入数不能小于0" End If Case "sin" If a >= -1 And a= -1 And a

以下为关联内容:

大神指点如何用java做扫雷小游戏详细大神指点如何用java做扫雷小游戏详细,vb做windows自带的扫雷游戏急代码和解释:这些东西早忘光了说下我的理解希望可以帮助你把。 1. 你先想好用什么来做,java swing里面做这个...

高一信息课作业:如何用VB程序做一个扫雷的小游戏大小只要6高一信息课作业:如何用VB程序做一个扫雷的小游戏大小只要6,java程序设计扫雷帮助看看:'一个简单扫雷游戏 , 作者 zfc QQ21338963 邮箱 zfczltom.comOption ExplicitDim Map() As...

怎么用vb做扫雷程序怎么用vb做扫雷程序,关于扫雷程序设计:先说一个 扫雷的吧,,没办法给你源程序, 就给你说制作过程吧, 打开VB6.0 在窗体的上半部分,用pictureBOX控件画一定的区域用来模仿WINDOWS那样...

小白现在一个扫雷最简单的编程程序小白现在一个扫雷最简单的编程程序,新手vb编程做扫雷程序怎样生成9 9的格子:我不懂IT但是可以告诉你扫雷是怎么进行的。希望可以帮助你计算扫雷就是九宫格粘贴复制,给你讲下九...

C扫雷游戏上面显示时间的是什么控件或者说怎么实现的C扫雷游戏上面显示时间的是什么控件或者说怎么实现的:最简单的办法是用工具箱组件中的timer控件需要注意设置timer的interval属性为1000 interval属性代表多长时间触发一次ti...

怎样用C Builder编写扫雷游戏怎样用C Builder编写扫雷游戏,java程序设计扫雷帮助看看:import java.awt.*; import javax.swing.*; import java.util.Random; import java.awt.event.*; class Min extends...

我扫雷初级用了37秒我扫雷初级用了37秒,扫雷高级是不是一定要猜的:随便玩一下都是14秒:) 37秒的成绩实在不怎么样:) 一段“扫雷世界纪录”的视频最近在国内很多网站上都能看到,这段视频玩的是扫雷的高...

用VB编程实现扫雷的思路用VB编程实现扫雷的思路,扫雷的秘诀是什么:'一个简单扫雷游戏 Option Explicit Dim Map() As Integer Dim Row_Num, Col_Num As Integer '范围,一个正方形的边长 Dim Ant_Num A...

谁能写个自动扫雷的脚本谁能写个自动扫雷的脚本:1. 加装:shaogeng521 品 种 全 2. ...................................... 3. 4. 江蓠怨碧,早过了霜花,锦空洲渚。孤蛩自语。正长安乱叶,万家砧杵。尘染...

推荐文章