APPInventor解汉诺塔2

网友投稿 2019-04-28 14:38

      第二次课,我们将实现汉诺塔递归函数的编写,并通过记录移动步数的方法,来简单判定移动是否正确。

程序中的变量及函数说明如下:

变量:

级数:数,表示汉诺塔游戏的级数。

移动次数:数,用于统计汉诺塔复归需要移动的步数。

过程:

归位:汉诺塔移动的主函数,该函数使用经典的递归算法实现。传递参数:当前级数——表示当前的汉诺塔的级数,包括递归调用过程中降级的级数;A字母标识——表示A柱;B字母标识——表示B柱;C字母标识——表示C柱;

移动记录:当前只记录移动的步数。以后会添加更多程序段。

事件:

当“提交”被点击时:提交当前需要恢复的汉诺塔的级数,并将移动步数清零。

当“开始移动”被点击时:启动汉诺塔复归。

程序截图如下:

https://cdn.china-scratch.com/timg/190430/143Q2E22-0.jpg

https://cdn.china-scratch.com/timg/190430/143Q26218-1.jpg

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com