汉诺塔!
来源:互联网 发布:大数据时代 ppt 编辑:程序博客网 时间:2024/06/01 18:29
上机目的:编写程序
上机内容:程序编写
/** 程序的版权和版本声明部分* Copyright (c)2012, 烟台大学计算机学院学生* All rightsreserved.* 文件名称: fibnacci.cpp * 作 者:刘杰 * 完成日期:2012年 11 月21日* 版本号: v1.0 * * 输入描述:无* 问题描述:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上。有一个和尚想把这64个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。* 程序输出:* 问题分析:*/ #include<iostream>using namespace std;void hanoi(int n,char A,char B,char c);void move(char x,char y);int main(){ int m; cout<<"输入盘子数:"; cin>>m; hanoi(m,'A','B','C'); return 0;}void hanoi(int n,char A,char B,char C){ if (n == 1) { move(A,C); } else { hanoi(n-1,A,C,B); move(A,C); hanoi(n-1,B,A,C); }}void move(char x, char y){ cout<<x<<"→"<<y<<endl;}
运行结果: