Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Объединение массивов


Автор: LexaL 25.3.2011, 18:09
Добрый день. Подскажите пожалуйста, как объединить два двухмерных массива размерностью 63х242 и 78х242 в один? Спасибо! 

Автор: Frees 25.3.2011, 18:31
а что значит объединить?

Автор: LexaL 25.3.2011, 18:46
соединить в один

Автор: Romkin 25.3.2011, 19:29
И какая размерность должна быть у итогового?

Автор: cat512 25.3.2011, 19:39
Попробуй так
Код

var
  A, B: array of array of integer;
  I, J: integer;
begin
//медленно
  SetLength(A, 63 + 78, 242);
  for I := 63 to Length(A) - 1 do
    for J := 0 to Length(A[I]) - 1 do
      A[I, J] := B[I - 63, J];
  B := nil;
end;

Код

var
  A, B: array of array of integer;
  I, J: integer;
begin
//быстро
  SetLength(A, 63 + 78, 242);
  System.Move(B[0, 0], A[High(A) - High(B), 0], Length(B) * Length(B[0]) * SizeOf(Integer));
  for i := 0 to Length(A) - 1 do
    for j := 0 to Length(A[I]) - 1 do
      ShowMessage(IntToStr(A[i, j]));
  B := nil;
end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)