• 课下作业1-2汉诺塔问题


    1.程序设计思想

    利用递归的方法,借助中间的底座将盘子从第一座移到第三座。输出挪动盘子的步骤

    2.程序流程图

    3.程序源代码

    //信1605-1 寇肖萌 20163446
    import java.util.Scanner;
    public class hanoita {
    public static int m;
    public static void main(String args[])
    {
    System.out.println("请输入要挪动盘子的个数:");
    Scanner scanner=new Scanner(System.in);//组合数的下标
    int m=scanner.nextInt();
    System.out.println("移动盘子的步骤是:");
    hanoi(m,'A','B','C');
    }
    public static void hanoi(int n,char one,char two,char three)//将n个盘从one座借助two座,移到three座
    {
    if(n==1)
    {
    move(one,three);
    }
    else
    {
    hanoi(n-1,one,three,two);
    move(one,three);
    hanoi(n-1,two,one,three);
    }
    }
    public static void move(char x,char y)
    {
    System.out.println(x+"-->"+y);
    }
    }

    4.程序结果截图

  • 相关阅读:
    STL常见用法
    7-1 求a/b的高精度值 (70分)
    迷宫问题
    ES6新特性之箭头函数语法
    2020软件工程作业05
    2020软件工程作业04
    CTF之SQL注入1
    CTF之Git泄露
    CTF之网站源码
    CTF之HTTP基础认证
  • 原文地址:https://www.cnblogs.com/ggrm/p/7659971.html
Copyright © 2020-2023  润新知