Exemplo n.º 1
0
    public HanoiSolver(int discs = 3)
    {
        TotalDiscs = discs;

        //Create list of items (discs)
        var discList = Enumerable.Range(1, TotalDiscs).Reverse();

        //Add items (discs) to first peg
        foreach (var d in discList)
        {
            FirstPeg.Push(d);
        }
    }
Exemplo n.º 2
0
    private void PrintPegs()
    {
        var fp = FirstPeg.Select(x => x).ToList();
        var sp = SecondPeg.Select(x => x).ToList();
        var tp = ThirdPeg.Select(x => x).ToList();

        var result = "";

        for (var i = 0; i < TotalDiscs; i++)
        {
            result += WriteSingleLine(fp, i) + "   ";
            result += WriteSingleLine(sp, i) + "   ";
            result += WriteSingleLine(tp, i) + "   ";
            result += "\n";
        }

        Console.WriteLine(result);
    }