Зертханалық жұмыс №5-6
Екі өлшемді жиым
Екі өлшемді жиымдарды анықтаудың барлық мүмкін жолдары:
1
2
3
4
5
6
|
int[,] nums1;
int[,] nums2 = new int[2, 3];
int[,] nums3 = new int[2, 3] { { 0, 1, 2 }, { 3, 4, 5 } };
int[,] nums4 = new int[,] { { 0, 1, 2 }, { 3, 4, 5 } };
int[,] nums5 = new [,]{ { 0, 1, 2 }, { 3, 4, 5 } };
int[,] nums6 = { { 0, 1, 2 }, { 3, 4, 5 } };
|
В частности, у каждого массива есть метод GetUpperBound(dimension), который возвращает индекс последнего элемента в определенной размерности. И если мы говорим непосредственно о двухмерном массиве, то первая размерность (с индексом 0) по сути это и есть таблица. И с помощью выражения mas.GetUpperBound(0) + 1 можно получить количество строк таблицы, представленной двухмерным массивом. А через mas.Length / rows можно получить количество элементов в каждой строке:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
int[,] mas = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }, { 10, 11, 12 } };
int rows = mas.GetUpperBound(0) + 1;
int columns = mas.Length / rows;
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
Console.Write($"{mas[i, j]} \t");
}
Console.WriteLine();
}
|
*************************************************************************************
Мысал: Екі өлшемді жиым берілген. Бас диагональдан төмен орналасқан элементтердiң көбейтіндісін табу керек.
// Eki olshemdi jiymdy jariyalau:
int[,] mas = new int[4,4] { { -1, 5, 8, -7 }, { 3, 9, 2, -3}, { -3, 3, -4, -9}, { 4, -5, 6, -1} };
int[,] mas1 = new int[4,4];
Console.WriteLine("Berilgen eki olshemdi jyim elementteri:\n");
// Eki olshemdi jiym elementterin basyp shygaru:
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
Console.Write(mas[i,j] + "\t");
}
Console.WriteLine();
}
int sum = 0;
Console.WriteLine("\nBas diagonaldyn tomen jagyndagy elementter: \n");
for (int i = 1; i < 4; i++)
{
for (int j = 0; j < i; j++)
{
mas1[i,j] = mas[i,j];
Console.Write(mas1[i,j] + "\t");
sum += mas1[i,j];
}
}
Console.Write("\n\nsum = {0}", sum);
Нәтижесі:
*************************************************************************************
Екі өлшемді жиым берілген. Әр жолының ең үлкен элементін және оның индексін табу керек.
Екі өлшемді жиым берілген. Әр жолының ең кіші элементін және оның индексін табу керек.
Екі өлшемді жиым берілген. Әр бағанының ең кіші теріс элементін және оның индексін табу керек.
Екі өлшемді жиым берілген. Әрбiр жолдарының қосындыларын табу керек.
Екі өлшемді жиым берілген. Әрбiр бағаналарының қосындыларын табу керек.
Екі өлшемді жиым берілген. Әр бағанының ең үлкен элементтерінің көбейтіндісін табу керек.
Екі өлшемді жиым берілген. Әр жолының ең үлкен элементтерінің көбейтіндісін табу керек.
Екі өлшемді жиым берілген. Әр жолының оң элементтерінің арифметикалық ортасын табу керек.
Екі өлшемді жиым берілген. Әр жолының элементтерінің қосындысының ең үлкенін табу керек.
Екі өлшемді жиым берілген. Әр жолының оң элементтердiң геометриялық ортасын табу керек.
Екі өлшемді жиым берілген. Әр бағанының теріс элементтердiң арифметикалық ортасын табу керек.
Екі өлшемді жиым берілген. Индекстерi қосындысы 4-ке тең болатын элементтерiнiң қосындысын табу керек.
Екі өлшемді жиым берілген. Бас диагональ бойындағы элементтердiң ең үлкенiн табу керек.
Екі өлшемді жиым берілген. Бас диагональ бойындағы элементтердiң ең кішісін табу керек.
Екі өлшемді жиым берілген. Бас диагоналының жоғарғы жағында және бас диагоналда орналасқан элементтерінің қосындысын табу керек.
Екі өлшемді жиым берілген. Бас диагональдағы элементтердiң арифметикалық ортасын табу керек.
Екі өлшемді жиым берілген. Бас диагональдан төмен орналасқан элементтердiң көбейтіндісін табу керек.
Екі өлшемді жиым берілген. Бас диагональда орналасқан элементтердiң ең үлкенін табу керек.
Екі өлшемді жиым берілген. Бас диагоналінің жоғарғы жағында орналасқан элементтердің ең кішісін табу керек.
Екі өлшемді жиым берілген. Бас диагоналында теріс элементтер орналасқан жолдарының қосындысын табу керек.
Екі өлшемді жиым берілген. Қосымша диагоналi бойындағы ең үлкен элементтi табу керек.
Екі өлшемді жиым берілген. Қосымша диагоналi бойындағы ең кіші элементтi табу керек.
Екі өлшемді жиым берілген. Қосымша диагональдан жоғарғы орналасқан элементтердiң қосындысын табу керек.
Екі өлшемді жиым берілген. Қосымша диагональдан төмен орналасқан элементтердiң көбейтіндісін табу керек.
Екі өлшемді жиым берілген. Қосымша диагональда орналасқан элементтердiң арифетикалық ортасын табу керек.
Екі өлшемді жиым берілген. Қосымша диагональда орналасқан элементтердiң геометриялық ортасын табу керек.
Екі өлшемді жиым берілген. 5-тен артық элементтердiң қосындысын табу керек.
Екі өлшемді жиым берілген. 5-тен кіші элементтердiң көбейтіндісін табу керек.
Екі өлшемді жиым берілген. Берiлген диапазонда (a;b) жататын элементтерінiң арифметикалық ортасын табу керек.
Екі өлшемді жиым берілген. Оң сан көп пе, әлде теріс сан көп пе, соны табу керек.
Достарыңызбен бөлісу: |