static void Main(string[] args) { var t1 = new Tower { Name = "Tower 1", Verbose = true }; var t2 = new Tower { Name = "Tower 2", Verbose = true }; var t3 = new Tower { Name = "Tower 3", Verbose = true }; t1.Add(6); t1.Add(5); t1.Add(4); t1.Add(3); t1.Add(2); t1.Add(1); Console.WriteLine("BEFORE GAME"); t1.PrintTower(); t2.PrintTower(); t3.PrintTower(); Console.WriteLine("MOVING DISKS"); t1.MoveDisks(t1.Count, dest: t2, buffer: t3); Console.WriteLine("AFTER GAME"); t1.PrintTower(); t2.PrintTower(); t3.PrintTower(); Console.WriteLine("MOVING DISKS BACK TO ORIGINAL"); t2.MoveDisks(t2.Count, dest: t1, buffer: t3); Console.WriteLine("AFTER GAME"); t1.PrintTower(); t2.PrintTower(); t3.PrintTower(); }
public void MoveTopToTower(Tower dest) { int move = Disks.Pop(); dest.Add(move); }