Для l oop получите номер итерации, используя только i и j - PullRequest
1 голос
/ 28 апреля 2020

Я просматривал вопросы с похожими названиями, но нигде не мог их найти. Предположим, у меня есть для l oop (независимо от языка программирования)

for (i=0; i < n; i++)
    for (j=0; j < m; j++)
        k = ...
        print("k is: " + k)

Теперь я хочу вычислить k ТОЛЬКО на i и j, где k - итерация сосчитать. Так, например, когда n=2 и m=2, чем мы должны получить

k is 0
k is 1
k is 2
k is 3

Это возможно только при использовании i и j или мне нужно вводить другую переменную, которая увеличивается каждый раз? Этот вопрос является более теоретическим, поскольку всегда можно просто решить актуальную проблему с помощью счетчика. Примечание: начинать с одного на отпечатке тоже хорошо.

1 Ответ

2 голосов
/ 28 апреля 2020

Вы не можете сделать это, не зная m или n

k = i * m + j

Или

k = i + j * n

И начать с 1:

k = i * m + j + 1

или

k = i + j * n + 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...