Как мне сделать эту таблицу 0-9 с циклами в Java?

1

Как мне сделать эту таблицу?
Вот что должно быть результатом:

        0 1 2 3 4 5 6 7 8 9                         
        1 2 3 4 5 6 7 8 9 0
        2 3 4 5 6 7 8 9 0 1
        3 4 5 6 7 8 9 0 1 2
        4 5 6 7 8 9 0 1 2 3
        5 6 7 8 9 0 1 2 3 4
        6 7 8 9 0 1 2 3 4 5
        7 8 9 0 1 2 3 4 5 6
        8 9 0 1 2 3 4 5 6 7
        9 0 1 2 3 4 5 6 7 8

И это лучшее, что я мог придумать:

for (int i = 0; i < 10; i++)

 {
    for (int j = 0; j < 10; j++) {
                if (i + j < 10) {
                    System.out.print(i + j);
                } else
                    System.out.print("x");
            }

            System.out.println();

        }

    }
}

Я просто не могу найти решение, как получить числа, запущенные снова за 9 с началом 0,1,2,3 и т.д. Мой код будет генерировать следующий:

        0123456789
        123456789x
        23456789xx
        3456789xxx  
        456789xxxx
        56789xxxxx
        6789xxxxxx 
        789xxxxxxx
        89xxxxxxxx
        9xxxxxxxxx 
  • 0
    Использование% (по модулю), как в ответе, самый хороший способ. Но другой простой способ - вычесть 10 из значения в вашем предложении else.
Теги:
for-loop
loops

2 ответа

1
Лучший ответ

Ты можешь сделать:

System.out.print((i + j) % 10);

Чтобы превратить 10 в 0, 11 в 1 и т.д.

1

Попробуй это:

for (int i=0; i<10; i++) {
  for (int j=i; j<i+10; j++) {
    System.out.print(j%10);
  }
  System.out.println();
}

Ключевым моментом здесь является использование оператора % (modulo).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню