课程2 (2)汉诺塔问题

汉若塔问题

1.设计思路:将复杂的问题简单化,移动中间的一块积木,需将小的的移动到空白的柱子,将中间的移动到目标柱子。再将小的移动回来。

2.程序源代码:

//信1605 1   20163529  刘兴达

package hannuota;

import java.util.Scanner;

 

public class Task{

    public static void move(int n, int startPole, int endPole) {

        if (n == 0) {

            return;

        }

        int intermediatePole = 6 - startPole - endPole;

        move(n - 1, startPole, intermediatePole);

        System.out.println("Move " + n + " from " + startPole + " to "

                + endPole);

        move(n - 1, intermediatePole, endPole);

    }

 

    public static void main(String[] args) {

      Scanner scanner=new Scanner(System.in);

      System.out.println("请输入汉诺塔的数");

      int m=scanner.nextInt();

        move(m, 1, 3);

    }

}

3.结果截图:

 

posted @ 2017-10-15 19:03  刘刘是个大天才  阅读(177)  评论(0编辑  收藏  举报