Метод ввода в матрицу

210
06 апреля 2018, 15:58

Прошу помощи, не мог бы кто-нибудь пояснить алгоритм работы данного метода.

void InsertText(char[,] matrix, string text, int n)
{
    int temp = 0;     
    for (int diff = 1 - n; diff <= n - 1; diff++)
        for (int i = 0; i < n; i++)
        {
            int j = i - diff;
            if (j < 0 || j >= n)
                continue;
            if (temp < text.Length)
            {
                matrix[i, j] = text[temp];                        
            }
            else break;
            temp++;
        }
}

Я думаю так: первый цикл проходится по каждой диагонали, второй цикл проходится по каждому элементу диагонали, а вот дальше не понимаю.

Картинка в качестве примера, где

string text = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ ";

READ ALSO
многопоточность WinForms [дубликат]

многопоточность WinForms [дубликат]

На данный вопрос уже ответили:

190
как настроить запуск unit тестов, используя Trevis CI

как настроить запуск unit тестов, используя Trevis CI

Есть консольное приложение, сборка походит в Trevis, решил написать тесты, следовательно, нужно внести изменения в файлеtravis

201
Решения для создания отчетов и печатных документов

Решения для создания отчетов и печатных документов

Есть задача по разработке ПО и большого количества отчетности к немуОтчетность как печатная (типа Отраслевых накладных и прочего), так и просто...

193