входные данные:
int[] size - массив в котором размерности. Он известен заранее.
int[] val - массив в котором координаты нужного элемента.
Последний элемент size[size.Lenght-1] хоть в алгоритме и не используется, но он нужен будит для проверки, что val[i] < size[i].
public int GetIndex(int[] val)
{
int q=1;
int p=val[0];
for(int i=0;i<val.lenght-1;i++)
{
q*=size[i];
p+=q*val[i+1];
}
return Massiv[p-1];
}