рефактор HanoyTowers, добавление решателя

This commit is contained in:
2026-03-05 22:07:29 +04:00
parent dbc3b3359e
commit 3d57b2a574
2 changed files with 77 additions and 64 deletions

View File

@@ -1,36 +1,18 @@
using System;
namespace su.divan2000.PLandDS_hanoi
namespace su.divan2000.PLandDS_HanoiTowers
{
class Program
{
static void Main()
{
HanoiTowers towers = new HanoiTowers(4);
Console.WriteLine(towers.toString());
HanoiTowers towers = new HanoiTowers(8);
Console.WriteLine(towers);
try
{
towers.move(0, 1);
Console.WriteLine(towers.toString());
towers.move(0, 2);
Console.WriteLine(towers.toString());
towers.move(1, 2);
Console.WriteLine(towers.toString());
towers.move(0, 1);
Console.WriteLine(towers.toString());
towers.move(2, 0);
Console.WriteLine(towers.toString());
towers.move(2, 1);
Console.WriteLine(towers.toString());
towers.move(0, 1);
}
catch (InvalidOperationException ex)
{
Console.WriteLine("Error: " + ex.Message);
}
Console.WriteLine(towers.toString());
List<HanoiUtils.Move> moves = HanoiUtils.MoveN(towers, towers.Size, HanoiTowers.TowerName.A, HanoiTowers.TowerName.C, HanoiTowers.TowerName.B);
HanoiUtils.ExecuteMoves(towers, moves);
Environment.Exit(0);
}
}
}