汉诺塔吧 关注:34贴子:119
  • 0回复贴,共1

C# 汉诺塔程序、能帮忙解释下为啥计数是正确的吗?试出来是对的

只看楼主收藏回复

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleHanoi
{
class Program
{
public static int s = 0;
static void hanoi(char A, char B, char C, int count)
{
if (count == 1)
{
Console.WriteLine("1: " + A + "->" + B);
}
else
{
hanoi(A, C, B, count - 1);
Console.WriteLine(count + ": " + A + "->" + B);
hanoi(C, B, A, count - 1);
}
s++;
Console.WriteLine(s);
}
static void Main(string[] args)
{
Console.WriteLine("请输入圆盘个数:");
int N = 0;
N = Convert.ToInt32(Console.ReadLine());
hanoi('A', 'B', 'C', N);
Console.WriteLine();
Console.WriteLine(s);
Console.ReadKey();
}
}
}


IP属地:广东1楼2023-04-25 16:14回复