25.07.2017 Views

Intro-CSharp-Book-v2015

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

250 Въведение в програмирането със C#<br />

Аналогично можем да декларираме и тримерни масиви като добавим още<br />

едно измерение:<br />

int[,,] threeDimensionalArray;<br />

На теория няма ограничения за броя на размерностите на тип на масив, но<br />

в практиката масиви с повече от две размерности са рядко използвани и<br />

затова ще се спрем по-подробно на двумерните масиви.<br />

Деклариране и заделяне на многомерен масив<br />

Многомерните масиви се декларират по начин, аналогичен на едномерните.<br />

Всяка тяхна размерност (освен първата) означаваме със запетая:<br />

int[,] intMatrix;<br />

float[,] floatMatrix;<br />

string[,,] strCube;<br />

Горният пример показва как да създадем двумерни и тримерни масиви.<br />

Всяка размерност в допълнение на първата отговаря на една запетая в<br />

квадратните скоби [].<br />

Памет за многомерни размери се заделя като се използва ключовата дума<br />

new и за всяка размерност в квадратни скоби се задава размерът, който е<br />

необходим:<br />

int[,] intMatrix = new int[3, 4];<br />

float[,] floatMatrix = new float[8, 2];<br />

string[,,] stringCube = new string[5, 5, 5];<br />

В горния пример intMatrix е двумерен масив с 3 елемента от тип int[] и<br />

всеки от тези 3 елемента има размерност 4. Така представени, двумерните<br />

масиви изглеждат трудни за осмисляне. Затова може да ги разглеждаме<br />

като двумерни матрици, които имат редове и колони за размерности:<br />

0<br />

1 2 3<br />

0<br />

1<br />

2<br />

1 3 6 2<br />

8 5 9 1<br />

4 7 3 0<br />

Редовете и колоните на квадратните матрици се номерират с индекси от 0<br />

до n-1. Ако един двумерен масив има размер m на n, той има точно m*n<br />

елемента.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!