Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
2 / 2 / 1
Регистрация: 29.05.2012
Сообщений: 107
1

Преобразование одномерного массива в двумерный

04.12.2014, 22:16. Показов 2244. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите пожалуйста как правильно написать цикл, чтобы значения элементов одномерного массива (длиной 4) присвоить двумерному массиву (2 на 2).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.12.2014, 22:16
Ответы с готовыми решениями:

Из одномерного массива в двумерный
Как реализовать функцию по конвертации одномерного массива в двумерный? Вот так реализовал:из...

Копирование одномерного массива в двумерный
допустим есть массив int a = new int int b = new int for (i=1;i<=10;i++) // расчет a //...

Конвертация одномерного массива в двумерный
Добрый день! Помогите, пожалуйста, в таком вопросе, есть задание: Заданная строка с N2 цифр....

Записать данные из одномерного массива в двумерный
есть одномерный массив. нужно записать данные с одномерного массива в двумерный. как это сделать ??

3
60 / 17 / 11
Регистрация: 01.11.2014
Сообщений: 100
04.12.2014, 23:57 2
C#
1
2
3
4
5
6
7
8
for (int i = 0; i < 2; i++)
                {
                    arr2[0, i] = arr1[i];
                    for (int k = 0; k < 2; k++)
                    {
                        arr2[k, 0] = arr1[k];
                    }
                }
по идее, что-то в этом духе должно быть. Не могу понять, где я туплю. Буду благодарен за подсказку
0
1151 / 743 / 483
Регистрация: 21.01.2014
Сообщений: 1,903
05.12.2014, 01:23 3
вариант 1
C#
1
int[,] matrix = { { array[0], array[1] }, { array[2], array[3] } };
вариант 2 универсальный
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
        static T[,] CreateMatrix<T>(T[] array)
        {
            int n = (int)Math.Sqrt(array.Length);
            int rows = 1;
            for (int i = n; i >= 2; i--)
            {
                if ((array.Length % i) == 0)
                {
                    rows = i;
                    break;
                }
            }
            if (rows == 1)
                throw new ArgumentException("Невозможно создать матрицу");
            int col = array.Length / rows;
            int counter = 0;
            T[,] matrix = new T[rows, col];
 
            for (int i = 0; i < rows; i++)
            {
                for (int j = 0; j < col; j++)
                {
                    matrix[i, j] = array[counter];
                    counter++;
                }
            }
            return matrix;
        }
1
870 / 720 / 304
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
05.12.2014, 13:08 4
Как вариант, такое решение
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        static T[,] CreateMatrix<T>(T[] array)
        {
            int len = array.Length;
         
            var rows = (int) (len / Math.Sqrt(len));
            if (rows <= 0) rows = 1;
 
            int col = array.Length / rows;
            var matrix = new T[rows, col];
 
            for (int i = 0; i < len; i++)
            {
                matrix[i / rows, i % rows] = array[i];
            }
            return matrix;
        }
0
05.12.2014, 13:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2014, 13:08
Помогаю со студенческими работами здесь

Как сделать из одномерного массива строк двумерный?
Такой вопрос. Имеется richTextBox, который читаю построчно. Нужно разбить все строки на N блоков по...

Как из одномерного массива сделать двумерный с linq
Интересует именно использование linq. Предположим одномерный массив интовский из 20 элементов. Я...

Используя метод для одномерного массива распечатать двумерный массив
имеется массив int ar = new int; (инициализированный) есть готовый метод печати одномерного...

Преобразование одномерного массива в двумерный
Есть такого рода программа: #include &lt;iostream&gt; using namespace std; int i, j; void main() {...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru