Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/222: Рейтинг темы: голосов - 222, средняя оценка - 4.69
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64

Как переконвертировать двумерный массив в одномерный

19.06.2011, 10:28. Показов 47174. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Подскажие пожалуйста, как из двумерного массива mas[i,j] получить одномерный к примеру x[i1]
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.06.2011, 10:28
Ответы с готовыми решениями:

Дан двумерный массив, из него сделать одномерный. В одномерный массив сначала вписат четные строки потом нечетные
Здравствуйте,собственно задача в заголовке темы. никак не получается все это дело слит в одномерный массив,подскажите плз, как...

Как преобразовать одномерный массив в двумерный?
Есть масcив типа ABCDEFG нужно чтобы каждый пятый элемент начинался с новой строки ABCDE FG Как такое возможно сделать?

Как превратить двумерный массив в одномерный?
Здравствуйте! Прошу помощи. Не знаю, как исправить код ниже для Эксель, чтобы одномерный массив полностью показывал элементы двумерного. ...

14
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 10:44
Конвертация массивов
0
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
19.06.2011, 11:08  [ТС]
Выскакивает вот такая ошибка
Error 1 'System.Array' does not contain a definition for 'Cast'
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 11:15
Elman12, добавьте
C#
1
using System.Linq;
1
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
19.06.2011, 11:17  [ТС]
Я пробовал, вот это вылетает

Error 1 The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 11:18
или конвертируйте так:
C#
1
2
3
4
5
6
7
8
9
            int[,] m2 = new int[10, 10];
            int[] m1 = new int[100];
            int z = 0;
            for (int i = 0; i < 10; i++)
                for (int j = 0; j < 10; j++)
                {
                    m1[z] = m2[i, j];
                    z++;
                }
3
Эксперт С++
 Аватар для CyBOSSeR
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
19.06.2011, 11:20
Elman12, добавьте ссылку на сборку System.Core.
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 11:20
Цитата Сообщение от Elman12 Посмотреть сообщение
Я пробовал, вот это вылетает

Error 1 The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?
Добавьте ссылку: обозреватель решений-ссылки-добавить-System.Core
2
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
19.06.2011, 14:28  [ТС]
Спасибо всем большое!
Все получилось, разобрался!

Добавлено через 2 часа 57 минут
Можно еще вопросик? Как при помощи return из этой подпрограммы возвратить в главную полученный одномерный массив m1[z]?
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
 
namespace пробуем_считывать_файлы
{
    class вещественная
    {
        public void Real()
        {
            #region            
            #region           
            # region
            Console.WriteLine("Считан массив вещественной части:" + Environment.NewLine);
            int n;
            StreamReader file = new StreamReader("d:/матрица.txt");
            string s = file.ReadToEnd();
            file.Close();
            string[] строка = s.Split('\n');
            string[] столбец = строка[0].Split(' ');
            int[,] a = new int[строка.Length, столбец.Length];
            int t = 0;
            n = 0;
            for (int i = 0; i < строка.Length; i++)
            {
                столбец = строка[i].Split(' ');
                for (int j = 0; j < столбец.Length; j++)
                {
                    t = Convert.ToInt32(столбец[j]);
                    a[i, j] = t;
                    //Console.Write(" {0}", a[i, j]);
                }
                //Console.WriteLine();
            }
            for (int i = 0; i < a.GetLength(0); ++i, Console.WriteLine())
                for (int j = 0; j < a.GetLength(1); ++j)
                    Console.Write("{0} ", a[i, j]);
            Console.WriteLine("Размер квадратной матрицы  " + a.GetLength(0) + "x" + a.GetLength(1));
            //int[,] m2 = new int[10, 10];
            int q;
            q = a.GetLength(0) * a.GetLength(1);
            int[] m1 = new int[q];
            int z = 0;
            
            for (int i = 0; i < a.GetLength(0); i++)
                for (int j = 0; j < a.GetLength(1); j++)
                {
                    m1[z] = a[i, j];
                    
                    z++;
                }            
            //Вывод на экран одномерного массива.
            //for (int i = 0; i < 16; ++i, Console.WriteLine())
                // Console.Write("{0} ", m1[i]);
 
            Console.WriteLine();
            #endregion
            //вещественная obj2 = new вещественная();
           // obj2.Real();          
 
            #endregion            
            #endregion
            
        }
    }
}
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 14:35
C#
1
2
3
4
5
6
7
        public static int[] Real()
        {
 
            ...
 
            return m1;
        }
1
8 / 8 / 1
Регистрация: 10.12.2010
Сообщений: 64
19.06.2011, 14:48  [ТС]
Вот на эту часть в главной программе ругается
C#
1
2
вещественная obj2 = new вещественная();
            obj2.Real();
ошибка
Error 1 Static member 'пробуем_считывать_файлы.вещественная.Re al()' cannot be accessed with an instance reference; qualify it with a type name instead
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
19.06.2011, 15:13
main:
C#
1
    int[] a = вещественная.Real();

если метод нестатический:
C#
1
2
3
4
5
6
7
8
    class вещественная
    {
        public int[] Real()
        {
            ...
            return m1;
        }
    }
main:
C#
1
2
    вещественная obj2 = new вещественная();
    int[] a = obj2.Real();
1
0 / 0 / 0
Регистрация: 19.06.2011
Сообщений: 3
20.06.2011, 07:38
Цитата Сообщение от Redfex Посмотреть сообщение
или конвертируйте так:
C#
1
2
3
4
5
6
7
8
9
            int[,] m2 = new int[10, 10];
            int[] m1 = new int[100];
            int z = 0;
            for (int i = 0; i < 10; i++)
                for (int j = 0; j < 10; j++)
                {
                    m1[z] = m2[i, j];
                    z++;
                }
А можно обратный вопрос?
Как по такому же алгоритму из одномерного массива сделать двумерный!?
0
615 / 539 / 115
Регистрация: 24.03.2011
Сообщений: 576
20.06.2011, 07:45
вот так:
C#
1
2
3
4
5
6
7
8
9
            int[,] m2 = new int[10, 10];
            int[] m1 = new int[100];
            int z = 0;
            for (int i = 0; i < 10; i++)
                for (int j = 0; j < 10; j++)
                {
                    m2[i, j] = m1[z];
                    z++;
                }
2
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
21.06.2011, 08:10
Цитата Сообщение от Redfex Посмотреть сообщение
вот так:
немного доработал
C#
1
2
3
4
5
6
            int[,] m2 = new int[10, 10];
            int[] m1 = new int[100];
            int z = 0;
            for (int i = 0; i < 10; i++)
                for (int j = 0; j < 10; j++)
                    m2[i, j] = m1[z++];
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.06.2011, 08:10
Помогаю со студенческими работами здесь

Как располагается в памяти одномерный массив? Двумерный?
3. Как располагается в памяти одномерный массив? Двумерный?

Как работает одномерный и двумерный массив с указателями?
ответьте на вопрос: Как работает одномерный и двумерный массив с указателями? помогите пожалуйста , очень срочно

Как узнать, массив одномерный или двумерный?
Есть ли простая функция? Если нет - то как это сделать на циклах?

Как конвертировать одномерный массив в двумерный с использованием цикла?
В сети видел подобное но не сохранил ссылку, а теперь не могу вспомнить как попал на тот сайт. Есть такой массив int Masiv/int Masiv...

Как передать массив (двумерный/одномерный вектор) в функцию?
#include &lt;iostream&gt; #include &lt;ctime&gt; using namespace std; int n,m;//סענמך ט סעמכבצנג void searchmin(int g,int mm,int i,int...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru