Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/25: Рейтинг темы: голосов - 25, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 16.10.2018
Сообщений: 5

Массив: Как обращаться к каждому элементу в массиве массивов?

30.08.2019, 09:18. Показов 5240. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
всем привет, прошу помощи в создании многомерного массива а именно
mas[123][3,2]

выглядеть он должен примерно так
1..1...1
....1...1
....1...1
2..2...2
....2...2
....2...2
3..3...3
....3...3
....3...3
и как обращаться к каждому элементу?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.08.2019, 09:18
Ответы с готовыми решениями:

Массив в массиве и обращение к каждому элементу.
Есть, например, такой код: Private Type a b As Integer c As Integer End Type Dim arrTree() As Variant Dim arr1() As...

Каким образом обращаться к конкретному элементу в массиве структур?
Предположим, есть структура: struct product { char name double urojay; }; И есть массив структур(если я верно...

Каждому элементу массива Q присвоить значение, равное сумме значений соответствующих элементов одномерных массивов P и H
Каждому элементу одномерного массива Q присвоить значение, равное сумме значений соответствующих элементов одномерных массивов P и H....

3
1 / 0 / 1
Регистрация: 18.11.2017
Сообщений: 10
30.08.2019, 13:26
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// инициализация в памяти
int[][,] mass = new int[3][,];
for(int i = 0; i < 3; ++i)
{
    mass[i] = new int[4, 5];
}
 
// перебор значений
for (int i = 0; i < 3; ++i)
{
    for (int j = 0; j < 4; ++j)
    {
        for (int l = 0; l < 5; ++l)
        {
            mass[i][j, l] = i * j + l; // инициализируйте, так как нужно
 
            // вывод на консоль
            Console.Write("m[" + i.ToString() + "][" + j.ToString() + ", " + l.ToString() + "] = " + mass[i][j, l].ToString() + " | ");
        }
        Console.WriteLine();
    }
    Console.WriteLine("--------------------------------------------");
}
Миниатюры
Массив: Как обращаться к каждому элементу в массиве массивов?  
0
0 / 0 / 0
Регистрация: 16.10.2018
Сообщений: 5
30.08.2019, 20:16  [ТС]
так то оно так а вот как задать значение первому элементу?
если предположить так
mass[0][0,0]=k
то k в массиве будет находиться тут:
1...k...1
....1...1
....1.....1
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,112
Записей в блоге: 2
30.08.2019, 20:50
Цитата Сообщение от sergdip Посмотреть сообщение
если предположить так
mass[0][0,0]=k
то k в массиве будет находиться тут:
Вообще-то, надо разделять сами данные и их ОТОБРАЖЕНИЕ.
В вашем примере, вы таким образом отображаете массив - если такое отображение не устраивает, то измените его. Сами данные здесь не причём.

Если воспользоваться таким методом отображения
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
        static string ToPrint<T>(T[][,] array)
        {
            string ret = "";
            for (int ind = 0; ind < array.Length; ind++)
            {
                if (ind != 0)
                    ret += Environment.NewLine + new string('-', 50) + Environment.NewLine;
                T[,] arr = array[ind];
                for (int row = 0; row < arr.GetLength(0); row++)
                {
                    if (row != 0)
                        ret += Environment.NewLine;
                    for (int col = 0; col < arr.GetLength(1); col++)
                    {
                        if (col != 0)
                            ret += '\t';
                        ret += arr[row, col].ToString();
                    }
                }
            }
            return ret;
        }
То элемент (0,0,0) будет отображаться в левом верхнем углу.
В примере это значение 9999
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
            int[][,] mass = new int[3][,];
 
            int count = 0;
 
            for (int i = 0; i < 3; ++i)
            {
                mass[i] = new int[2, 3];
                for (int row = 0; row < mass[i].GetLength(0); row++)
                    for (int col = 0; col < mass[i].GetLength(1); col++)
                        mass[i][row, col] = count++;
            }
 
            Console.WriteLine("Начальное состояние массива");
            Console.WriteLine(ToPrint(mass));
 
            mass[0][0, 0] = 9999;
            Console.WriteLine(Environment.NewLine + "Состояние массива после mass[0][0, 0] = 9999");
            Console.WriteLine(ToPrint(mass));
 
 
            Console.ReadKey();
Консоль
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Начальное состояние массива
0       1       2
3       4       5
--------------------------------------------------
6       7       8
9       10      11
--------------------------------------------------
12      13      14
15      16      17
 
Состояние массива после mass[0][0, 0] = 9999
9999    1       2
3       4       5
--------------------------------------------------
6       7       8
9       10      11
--------------------------------------------------
12      13      14
15      16      17
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.08.2019, 20:50
Помогаю со студенческими работами здесь

Двумерный массив. Обращение к каждому элементу.
Пожалуйста помогите написать данную программу: Дана матрица символов. Написать программу обращения к каждому элементу этой матрицы, ...

StringBuilder как обращаться к элементу
пример string №1 string s; s+=&quot;1&quot;; s+=&quot;2&quot;; s+=&quot;3&quot;; Console.Write(s); результат: 123

заполнить массив A(N) присвоив каждому элементу его индекс
Заполнить массив A(N) присвоив каждому элементу его индекс.вывести на экран

Массив: К каждому элементу массива добавить его наибольший элемент
Задано масив X(n) Перетворити заданий масив у наступний спосіб:до кожного елемента масиву додати його найбільший елемент Задано...

Дан массив С (1.n, 1.m), целых чисел. Додайте к каждому элементу строки 10.
Дан массив С (1..n, 1..m), целых чисел.Додайте к каждому элементу строки 10. Начальный и изменен массивы выведите на экран


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru