Аналог setw() в C#

226
10 января 2019, 05:50

Требуется вывести таблицу умножения в консоли примерно подобном виде:

т. е. так, чтобы все элементы располагались точно друг под другом. В С++ есть setw(), который позволяет настроить ширину вывода строки. Как сделать то же самое на С#?

Код программы без форматированного вывода:

static void Main(string[] args)
{
    for (int i = 1; i <= 10; i++)
    {
        for (int j = 1; j <= 10; j++)
        {
            Console.Write(i*j);
        }
        Console.WriteLine();
    }
    Console.ReadKey();
}
Answer 1

Используйте форматирование

for (int i = 1; i <= 10; i++)
{
    for (int j = 1; j <= 10; j++)
    {
        Console.Write("{0,5}",i*j);
    }
    Console.WriteLine();
}
Answer 2

Используйте PadLeft:

for (int i = 1; i <= 10; i++)
{
    for (int j = 1; j <= 10; j++)
    {
        Console.Write((i * j).ToString().PadLeft(4));
    }
    Console.WriteLine();
}

Если строка имеет длину менее 4 символов, то она будет дополнена пробелами слева до этой длины.

READ ALSO
Не могу изменить layer в unity

Не могу изменить layer в unity

Нужно сделать если игрок находится за деревом - Order in layer уменьшается, в следствии чего игрок отрисовывается за деревом, то есть дерево его...

136
Возможно ли выполнение Win формы без отображения

Возможно ли выполнение Win формы без отображения

Приступил к расширению функционала и главная форма стала вторичной

154
Как сгруппировать элементы ListView? wpf

Как сгруппировать элементы ListView? wpf

Вопрос простойМне нужно сгруппировать мой ListView (в котором GridView) где-то так:

176
не работает composer

не работает composer

На Open Server внезапно перестал работать Composer, не могу установить пакет, не могу обновить существующие пакеты, даже не могу заново установить...

253