C# сдвигает несколько столбцов в двумерном массиве
Я хочу сместить мой массив (два тусклых) как стек.
Каждый столбец должен быть смещен параллельно (те же шаги, то же направление).
массив перед массивом после сдвига
1 11 21 2 12 22
2 12 22 3 13 23
3 13 23 4 14 24
4 14 24 5 15 25
5 15 25 0 0 0
Я пробовал array.copy, но он копирует массив, как если бы он был массивом с одним измерением. Так что это испортит сдвиг в других столбцах. Кто-нибудь знает, как это сделать... без использования циклов по всему массиву:D
1 ответ
Просто используя массивы.
int[,] array = new int[,]
{
{1, 11, 12}, {2, 21, 22}, {3, 31, 33}
};
for (int i = 1; i < array.GetUpperBound(0) + 1; i++ )
{
for(int j=0; j < array.GetUpperBound(1) +1; j++)
{
if (i == array.GetUpperBound(0))
{
array[i, j] = 0;
}
else
{
array[i - 1, j] = array[i, j];
}
}
}