如何使用 Console.SetCursorPosition c# 绘制对角线?

How can I draw a diagonal line with Console.SetCursorPosition c#?

我需要做一个接收 3 个条目的函数:线开始的水平和垂直位置,以及它的长度,并绘制向左下降的对角线。我不明白我该怎么做对角线。我已经做了一个循环来做一条水平线,但我不知道我需要改变什么来画一条对角线。

对于水平线,我做了:

    static void LigneHorizontale(int posh, int pov, int longueur)
    {

            for (int i = 0; i < longueur; i++)
            {
                Console.SetCursorPosition(posh+i, pov);
                Console.WriteLine("-");
            }
    }

你需要增加X:

    public static void LineHorizontale(int x, int y, int length)
    {
        for (var i = 0; i < length; i++)
        {
            Console.SetCursorPosition(x + i, y);
            Console.Write("-");
        }
    }

对角线:

public static void LineDiaglonal(int x, int y, int length)
{
    for (var i = 0; i < length; i++)
    {
        Console.SetCursorPosition(x + i, y + i);
        Console.Write('\');
    }
}

你需要设置一个CursorPosition到给定的位置,然后需要画一条水平线。

喜欢,

public static void LineHorizontale(int x, int y, int length)
{
    //This will set your cursor position on x and y
    Console.SetCursorPosition(x, y);

    //This will draw '-' n times here n is length
    Console.WriteLine(new String('-', length));
}

如果你想打印对角线然后使用 \ 而不是 - 并增加 x 和 y 位置。

有点像,

    public static void LineDiagonal(int x, int y, int length)
    {

        for(int i = 0; i < length; i++)
        {
            //This will set your cursor position on x and y
            Console.SetCursorPosition(x+i, y+i);

            //This will draw '\' n times here n is length
            Console.Write(@"\");

        }
    }

输出: