Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ формирование одномерного массива

Автор: Slim 12.04.2007 22:32

Собственно одна из модульных задач на тему "Массивы"
Лекций по Массивам у нас была только одна, и то на две странички!
"Хороший препод" - Десятникова
Никто в группе не написал модуль!
Теперь буду пытаться решить задачи на 23 варианта, чтоб нормально пересдать модуль!

Одна из задач:

Цитата
Из исходной матрицы сформировать одномерный массив, содержащий только неценные отрицательные элементы.
Исходная матрица С (MxN)
Новый массив D1



Создаём матрицу

Код
Program Mod1;
Var a: array [1..50, 1..50] of Integer;
i, j, n, m: integer;
Begin
Write ("Сколько строк? ");
ReadLn(m);
Write ("Сколько столбцов? ");
ReadLn(n);
For i:=1 to m do
Begin
For j:=1 to n do
begin
a[i,j]:=int ( rnd * 46 ) -20;
write( a [ i, j ], " " );
end;
writeLn;
end;
End.

А дальше, не могу понять...как создать из этой матрицы, одномерный массив?

Автор: мисс_граффити 12.04.2007 22:56

1. Что за ошибка выскакивает? Темы разделила...
2. Что такое неценные элементы?

Автор: Slim 13.04.2007 3:25

) Спасибо что помогла, и очень приятно, что отозвалась девушка!

Ошибка выскакивает: Error3: Unkrown Indentifier
Курсор показывает на параметр случайных чисел - rnd.

Что это за неценные элементы, я сам понятия не имею!Представим что условие задачи дано без "неценных элементов".

Автор: Slim 16.04.2007 16:42

Цитата
Из исходной матрицы сформировать одномерный массив, содержащий только отрицательные элементы.
Исходная матрица С (MxN)
Новый массив D1

По теории, нужно создать новый одномерный массив размером m*n, где m и n размерность 2-мерного массива
и циклом по 2мерному массиву присваиваем значения 1мерному!
Только как это реализовать на практике???

Двухмерный массив:

Код
Program Mod1;
Var a: array [1..50, 1..50] of Integer;
i, j, n, m: integer;
Begin
Write ("Сколько строк? ");
ReadLn(m);
Write ("Сколько столбцов? ");
ReadLn(n);
For i:=1 to m do
Begin
For j:=1 to n do
begin
a[i,j]:=int ( rnd * 46 ) -20;
write( a [ i, j ]);
end;
writeLn;
end;
End.