3*3的方格里有1-8八个数字和一个空格,通过移动可以使其按时针排序.这种游戏的vb代码应怎么写
问题描述:
3*3的方格里有1-8八个数字和一个空格,通过移动可以使其按时针排序.这种游戏的vb代码应怎么写
移动数字排序
1.算法说明
在3*3的9个方格中,空出中间的格,其余八个格上任意填入数字1到8(注意:每个数字仅能填入一个点,不能重复);1的位置固定不动,然后移动其余的数字,直至数字1到8按照顺时针从小到大排好序为止.
移动的规则是:只能将数字沿线移向空白的点.
3.功能要求
启动程序后,在“输入原始数字”下方的各文本框中任意输入数字1到8(空出中间的点).单击“确定”按钮,开始按照自行设计的算法自动移动数字(注意:数字1的位置固定不动),直至按照要求排好序停止.
(1)在“数字移动过程”下方的列表框中显示每次移动后数字的排列情况,其中0表示空位(注意:只能将数字沿线移向空白的点).
(2)移动完成后的结果显示在“移动后的结果”下方的个文本框中.
(3)移动次数显示在“移动次数”文本框中.
答
#include#include#include#include#include#include#include#include//调用时间种子using namespace std;#define M 1000//数值范围#define N 20//待排序记录的个数int R[N+1];int i,j;/*typedef struct{int key;//关...