You are passing an invalid index to GetLength
. The dimensions of a multidimensional array are 0
based, so -1
is invalid and using a negative number (or a number that is larger than the number of dimensions – 1) would cause an IndexOutOfRangeException
.
This will loop over the first dimension:
for (int k = 0; k < odds.GetLength(0); k++)
You need to add another loop to go through the second dimension:
for (int k = 0; k < odds.GetLength(0); k++)
for (int l = 0; l < odds.GetLength(1); l++)
var val = odds[k, l];