3.功能模块化分析
通过对问题描述的分析,可知马踏棋盘问题所要求实现的功能大致由三个部分组成:
⑴接收用户输入的马的起始位置;
⑵从起始位置开始在棋盘上标记马按问题描述中的行走规则访问棋盘中每个格子的顺序;
⑶输出棋盘上标记的访问顺序。
4.系统结构的总体设计
⑴输入模块:提示用户输入数据,接收用户输入的数据,即马的起始位置,并判断该位置是否在棋盘内。若该起始位置在棋盘内,则接着执行下一模块的功能;若该起始位置不在棋盘内,则提示用户输入无效,并要求用户再次输入;
⑵初始化模块:初始化所有的数据结构中的数据;
⑶棋盘遍历模块:采用特定算法,按照马的行走规则对棋盘进行遍历,每次访问一个格子时,要测试该格子是否在棋盘范围内,保存马的访问顺序;
⑷位置测试模块:接收格子的x和y坐标,判断该格子是否在棋盘内,然后根据该格子是否在棋盘内返回不同的信号;
⑸输出模块:将棋盘遍历模块中保存下来的讯号进行输出,输出格式遵从棋盘格式;
⑹总控模块:负责调用个处理模块,完成马踏棋盘问题的求解。