Печать номеров с цифрами в терминале C# - PullRequest
0 голосов
/ 01 мая 2020

У меня есть эта проблема в качестве задания в университете. Проблема в том, как сделать так, чтобы числа печатались так, чтобы цифры были выровнены друг с другом, автоматически, как показано на рисунке ниже.

sample output

Это мой код прямо сейчас.

        public class Tabliczka
    {
        private int n;
        public Tabliczka(int n)
        {
            this.n = n;
        }

        public void wyswietl()
        {
            for(int i = 1; i<=n; i++)
            {
                for(int j = 1; j<=n; j++)
                {
                    if (i * j <= 9) Console.Write("   {0}", i * j);
                    if (i * j > 9 && i * j <= 99) Console.Write("  {0}", i * j);
                    if (i * j > 99) Console.Write(" {0}", i * j);
                }
                Console.Write("\n");
            }
        }
    }

Это не очень хорошее решение, потому что оно правильно отформатирует его только до 999. Заранее благодарим за любые советы:).

1 Ответ

0 голосов
/ 01 мая 2020

Нам просто нужно правильно отформатировать числа:

public void wyswietl()
{
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= n; j++)
        {
            Console.Write(string.Format("{0, 10}", i * j));
        }
        Console.Write(Environment.NewLine);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...