Ребята, помогите, пожалуйста. Пропустил лекцию по двумерным массивам и теперь вообще не пойму, как это делается. Алгоритмы писать умею, а вот с программами - беда. Иду на автомат, а две проги всё портят. Вот два задания, буду очень признателен.
а) Для массива L(N,M) найти кол-во положительных, отрицательных и нулевых элементов;
б) Из массива M(4,5) сформировать массив B(5), каждый элемент которого равен произведению ненулевых элементов соответствующего столбца массива M.
Двумерный массив в Делфи(СРОЧНО)
Так, а в чём проблема? Обходят двумерный массив, например, двумя вложенными циклами. Во внутреннем цикле меняешь одну координату, во внешнем - другую.
Код: Выделить всё
for j:=1 to N do
for j:=1 to M do
begin
//сравнение элемента L[i,j] на ноль, на положительное и отрицательное значение
//инкрементирование соответствующего счётчика
end;
Даже самый дурацкий замысел можно воплотить мастерски
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
Вот Вам под "б":jackass92 писал(а): б) Из массива M(4,5) сформировать массив B(5), каждый элемент которого равен произведению ненулевых элементов соответствующего столбца массива M.
Код: Выделить всё
var
M: array[1..4, 1..5] of Integer;
B: array[1..5] of Integer;
i, j: Integer;
begin
for j := 1 to 5 do
B[j] := 1;
Randomize;
for i := 1 to 4 do
begin
for j := 1 to 5 do
begin
M[i, j] := Random(10);
Write(M[i, j]:5);
if M[i, j] <> 0 then
B[j] := B[j] * M[i, j];
end;
WriteLn;
end;
WriteLn;
for j := 1 to 5 do
Write(B[j]:5);
ReadLn;
end.
Нет религии выше истины
-
- Сообщения: 526
- Зарегистрирован: 03 янв 2009, 23:17
- Откуда: Voronezh
- Контактная информация:
AiK писал(а):Так, а в чём проблема?...
ТС, Вам динамический массив надо? Если нет, то для "автомата" такая задача вообще должна быть на раз-два )jackass92 писал(а):...а) Для массива L(N,M)...
Нет религии выше истины