扫雷程序思想讲解
扫雷程序思想讲解
在我大二的时候就编写了一个扫雷程序,现在也有很多 源程序下载,我不知道他们的算法是怎么样的,但我想我的 算法应是最清晰和简单的。下面就来讲解我的扫雷程序思想。 首先我们在雷区上随机地放上雷,没有雷的地方被点击 后就会显示一个数字表示它周围有几个雷,这是怎么实现的 呢?我们可以把整个雷区看成一个二维数组a[i,j],如雷区: 11 12 13 14 15 16 17 18 21 22 23 24 25 26 27 28 31 32 33 34 35 36 37 38 41 42 43 44 45 46 47 48 51 52 53 54 55 56 57 58 我要知道a[34]周围有几个雷,就只有去检测 a[23],a[24],a[25] a[33], a[35] a[43],a[44],a[45] 这8个雷区是否放上了雷,仔细观察它们成在数学关系。 抽象出来就是:a[i,j]的雷的个数就是由 a[i-1,j-1],a[i-1,j],a[i-1,j+1] a[ i ,j-1], a[ i ,j+1] a[i+1,j-1],a[i+1,j],a[i+1,j+1] (如果超出边界再加以判断) 这样的8个雷区决定的。 扫雷程序还会自动展开已确定没有雷的雷区。如果 上一篇:取得某一dll所有输出函数名 下一篇:《Delphi高手突破》第一章——预览版 更多相关文章
|
推荐文章
精彩文章
|