Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
khafiz shamurov
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 5
#1

Преобразовать двумерный в одномерный - C++

31.10.2013, 15:39. Просмотров 344. Ответов 8
Метки нет (Все метки)

Ребят,подскажите,как преобразовать двумерный массив в одномерный, при этом не увеличивая число форов

using namespace std;
template <class T>
T Sort(const int N,T* Arr)//Шаблон функции сортировки выбором
{
T buff;
int b;
for (int i=0;i<(N-1);i++)//Внешний цикл (счетчик проходов)
{
for(int j=(i+1);j<N;j++)//Внутренний цикл (поиск минимального элемента в проходе и перенос его на стартовую позицию прохода)
{
if(Arr[i]>Arr[j])
{
buff = Arr[i];
Arr[i] = Arr[j];
Arr[j]= buff;
}
}




}
return *Arr;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2013, 15:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразовать двумерный в одномерный (C++):

Преобразовать двумерный массив в одномерный - C++
Дано двумерный массив a. Необходимо создать одномерный массив b, располагая в нем элементы по соответствующей схеме

Преобразовать одномерный массив в двумерный - C++
Кусок кода. который должен был создавать таблицу с заданного текста. на вид он работает правильно но когда я обращаюсь к конкретному...

Преобразовать двумерный целочисленный массив в одномерный - C++
С++ Написать программу, преобразующую двумерный целочисленный массив в одномерный, &quot;развернув&quot; его по столбцам. Для работы с...

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

Преобразовать двумерный массив в одномерный, удаляя каждую вторую строку - C++
Подскажите пожалуйста как 2D массив преобразовать в 1D, при этом удаляя каждую 2рую строку. Прилагаю свой вариант кода... Мб подскажите...

Преобразовать двумерный массив - C++
Добрый день.Требуется преобразовать двумерный массив в одномерный по спирали,начиная с элемента . Программа работает частично...

8
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
31.10.2013, 16:05 #2
Цитата Сообщение от khafiz shamurov Посмотреть сообщение
как преобразовать двумерный массив в одномерный, при этом не увеличивая число форов
А как этот вопрос связан с приведенным кодом?
0
Genn55
370 / 217 / 41
Регистрация: 26.12.2012
Сообщений: 713
31.10.2013, 20:26 #3
Как то так.
C++
1
2
3
4
5
6
7
8
9
10
11
12
  int *temp=new int[N*M]; //Один из самых простых вариантов рассматривать двумерный массив как одномерный
   int count=0; //индексы одномерного массива
 
   //Копируем данные двумерного массива в одномерный
   for (int i=0;i<N;i++)
   {
       for (int j=0;j<M;j++)
       {
          temp[count]=mas[i][j];
          count++;
       }
   }
Только не понятно как ваш код связан с преобразованием двумерного массива в одномерный.
0
khafiz shamurov
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 5
03.11.2013, 09:42  [ТС] #4
Только не понятно как ваш код связан с преобразованием двумерного массива в одномерный.[/QUOTE]

В коде(шаблоне) используется двумерный массив, а надо не изменяя кол-во фОРОВ изменить двумерный в одномерный
0
MrGluck
Модератор
Эксперт CЭксперт С++
7419 / 4534 / 673
Регистрация: 29.11.2010
Сообщений: 12,305
03.11.2013, 09:48 #5
Цитата Сообщение от khafiz shamurov Посмотреть сообщение
В коде(шаблоне) используется двумерный массив
ошибаетесь, там одномерный массив.
Что тогда в вашем понимании двумерный?
0
khafiz shamurov
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 5
03.11.2013, 09:57  [ТС] #6
Цитата Сообщение от MrGluck Посмотреть сообщение
ошибаетесь, там одномерный массив.
Что тогда в вашем понимании двумерный?

В двумерном обычно используется i j, да и по реализации он задается,как двумерный
0
MrGluck
Модератор
Эксперт CЭксперт С++
7419 / 4534 / 673
Регистрация: 29.11.2010
Сообщений: 12,305
03.11.2013, 10:03 #7
Двумерный массив - массив, который задается как двумерный. Не оспоришь.

int *a - одномерный;
int **a - двумерный.
Риторический вопрос: сколько звездочек в параметре T у вашей шаблонной функции?
0
Genn55
370 / 217 / 41
Регистрация: 26.12.2012
Сообщений: 713
03.11.2013, 10:04 #8
T Sort(const int N,T* Arr)//Шаблон функции сортировки выбором по моему понятно написано.
0
Tulosba
03.11.2013, 10:29     Преобразовать двумерный в одномерный
  #9

Не по теме:

Цитата Сообщение от MrGluck Посмотреть сообщение
int **a - двумерный.
Одномерный. Но элементы int* Или вообще скаляр int**. Наверное показательнее использовать квадратные скобки.

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.11.2013, 10:29
Привет! Вот еще темы с ответами:

Преобразовать одномерный массив - C++
Дан целочисленный массив из 20 элементов. Поменять местами элементы так, чтобы они находились в таком порядке: a a a a a a a a a a a a...

преобразовать одномерный массив - C++
Доброго времени суток! Помогите решить задачу, а то у меня в голове совсем не укладывается как. Дан массив размера N. Преобразовать его,...

Преобразовать двумерный массив в функции - C++
#include &lt;conio.h&gt; #include &lt;locale.h&gt; #include &lt;math.h&gt; #include &lt;iostream&gt; using namespace std; void InputMassive(int**mas, int...

одномерный и двумерный массивы - C++
1.составить алгоритм,с помощью одномерного массива Заполнить массив числами 2.1, 2.2, 2.3, …, 2.18. 2.составить алгоритм,с помощью...


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

Или воспользуйтесь поиском по форуму:
9
03.11.2013, 10:29
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru