MBrendecke icon

Hanoi

MBrendecke | PRO | 04/23/19 03:04:29 PM UTC | 0 ⭐ | 390 👁️ | Never ⏰ | []
C# |

1.03 KB

|

None

|

0 👍

/

0 👎

using System.Text;
using static System.Console;
 
namespace Hanoi
{
    internal class Program
    {
        private const int SCHEIBEN = 8;
        private static int SCHRITT = 1;
        private static readonly StringBuilder SB = new StringBuilder();
 
        private static void Main(string[] args)
        {
            Hanoi(SCHEIBEN, 'A', 'B', 'C');
            WriteLine(SB);
            ReadLine();
        }
 
        private static void Hanoi(int scheibe, char start, char puffer, char ziel)
        {
            if (scheibe == 1)
            {
                Add(scheibe, start, ziel);                
            } else
            {
                Hanoi(scheibe - 1, start, ziel, puffer);
                Add(scheibe, start, ziel);
                Hanoi(scheibe - 1, puffer, start, ziel);
            }
        }
 
        private static void Add(int scheibe, char start, char ziel) =>
            SB.AppendLine($"Schritt #{SCHRITT++:d4} : Bewege Scheibe #{scheibe:d2} von {start} nach {ziel}.");
    }
}

Comments