Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 02.09.2010, 19:43   #1
S.Mihail
Новичок
Джуниор
 
Регистрация: 02.09.2010
Сообщений: 2
По умолчанию Преобразование двумерного массива в одномерный...

Всем привет.Прошу помочь с преобразованием двумерного массива в одномерный. На каком-нибудь не сложном примере с пояснением. Зарание спасибо.
S.Mihail вне форума
Старый 02.09.2010, 20:48   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

В смысле "преобразование"? Я могу тысчу вариантов такого "преобразования" придумать... Что вы хотели?
p51x вне форума
Старый 03.09.2010, 00:00   #3
vlad_light
Пользователь
 
Регистрация: 27.08.2010
Сообщений: 95
По умолчанию

Код:
var
arr1:array[1..255,1..255] of integer; //заданный двумерный массив
arr2:array[1..255] of integer;  //новый одномерный массив
k,i,j,m,n:integer; //i,j,k - счётчики; n,m - длинна и ширина двумерного массива
// 1<=i<=n, 1<=j<=m, 1<=k<=m+n
begin
k:=1;
for i:=1 to n 
  for j:=1 to m //пробегаем весь двумерный массив
    arr2[k]:=arr1[i,j];  //заносим значение каждой компоненты в новый массив
    inc(k);  //увеличиваем счётчик на 1 (счётчики i,j увеличиваются автомтически)
end.

Последний раз редактировалось vlad_light; 03.09.2010 в 00:04.
vlad_light вне форума
Старый 03.09.2010, 00:49   #4
S.Mihail
Новичок
Джуниор
 
Регистрация: 02.09.2010
Сообщений: 2
По умолчанию

ну например :

const n=2;
m=5;
k=2*(m);
type mass=array[1..n],[1..m] of word;
mass1=array[1..k] of word; {k - должно равняться количеству ячеек в двумерном массиве}

const yourmassiv:mass=((3,2,1,5,4),
(7,8,9,6,10));
var freemassiv:maass1;
i,j,k: word;

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

begin
k:=1;
for i:=1 to m do
for j:=1 to n do
freemassiv[k]:=yourmassiv[i,j];
inc(k);
end.
.....и этого будет достаточно, чтобы паскаль в каждую ячейку пустого одномерного массива поместил значение двумерного, соответствующее номеру ячейки.
S.Mihail вне форума
Старый 03.09.2010, 08:39   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Все гораздо проще чем вы думаете, господа корнеты:
Код:
var
 arr1:array[1..10,1..5] of integer; //заданный двумерный массив
 arr2:array[1..10*5] of integer;  //новый одномерный массив
 i,j:integer;
begin
for i:=1 to 10 do begin
  for j:=1 to 5 do
    begin arr1[i,j]:=random(10);write(arr1[i,j]:5);end;
  writeln;
end;
writeln;
move(arr1,arr2,sizeof(arr2));
for i:=1 to 10*5 do begin
     write(arr2[i]:5);
end;
readln;
  { TODO -oUser -cConsole Main : Insert code here }
end.
Цитата:
vlad_light
Ты бы проверил бы свой код, что ли...
I'm learning to live...
Stilet вне форума
Старый 09.12.2011, 19:24   #6
OLGApr
Новичок
Джуниор
 
Регистрация: 09.12.2011
Сообщений: 1
По умолчанию

помочь != "решите за меня"!
помогите................Разработать алгоритм и написать программу на языке Turbo Pascal. Задана матрица (двумерный массив) A размером NxМ, состоящая из действительных элементов.Получить новую матрицу путем вычитания всех элементов данной матрицы из ее наибольшего по модулю элемента. Преобразовать исходную матрицу в одномерный массив. Вывести на экран полученную матрицу и вектор
OLGApr вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод двумерного массива Kocapb Общие вопросы C/C++ 4 11.10.2012 11:05
заполнения двумерного массива С++ Caнёk Помощь студентам 10 26.10.2010 17:24
Из двумерного в одномерный массив elsin Общие вопросы Delphi 1 16.01.2009 03:58
Поворот двумерного массива Guest_ Общие вопросы C/C++ 6 24.12.2007 23:02