Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Внизмассивы Найти похожие ветки
← →
bag (2010-02-28 22:24) [0]Мастера, помогите решить задачу. Имеются 20 массивов размерностью 4.
Эти массивы созданы изначально имеют строго по 4 элемента чисел типа integer
mass_1:array[1..4] of integer;
mass_2:array[1..4] of integer;
etc
Во время программы в каждый элемент каждого из массива записываются случайные числа.
Задача такая: мне нужно создать еще 5 массивов размерностью 16 каждый.
И заполнить скажем 1 массив числами из первых 4 масиввов(те 4 из 20 ранее созданных).
Второй массив числами из след. 4 массивов и т.д.
Как это реализовать, прошу помочь!
← →
Fenik © (2010-02-28 22:47) [1]Начиная с D5 можно использовать динамические массивы. Примерно так:
type
TMyIntArray = array of array of Integer; // двумерный динамический массив
const
SRC_W = 20;
SRC_H = 4;
var
src: TMyIntArray;
dst: TMyIntArray;
I, J, X, Y: Integer;
begin
// Создаем первый двумерный массив
SetLength(src, SRC_W, SRC_H);
// Заполняем числами
for I := 0 to SRC_W - 1 do
begin
for J := 0 to SRC_H - 1 do
src[I, J] := Random(1000);
end;
// Создаем второй массив
SetLength(dst, 5, 16);
// Заполняем числами из первого массива
X := 0; // Индекс ряда первого массива
Y := 0; // Индекс столбца первого масива
for I := 0 to High(dst) do
begin
for J := 0 to High(dst[I]) do
begin
dst[I, J] := src[X, Y];
Inc(Y);
if Y >= SRC_H then
begin
Y := 0;
Inc(X);
if X >= SRC_W then
X := 0;
end;
end;
end;
end;
Набирал в браузере, возможны ошибки.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.062 c