Опубликовано 03.01.2018 по предмету Информатика от Гость

Даны масивы A(10) B(15). напечатать массив в котором произведение положительных элиментов больше. паскаль с помощью подпрограммы .Процедуры, ввод с клавиатуры

Ответ оставил Гость

Type
  V = array of integer;

function ProdPos(a: V): longint;
var
  i: integer;
begin
  Result := 1;
  foreach var p: longint in a do
    if p > 0 then Result := Result * p
end;

procedure InitMas(var a: V; title: string);
var
  i: integer;
begin
  writeln(title, (, length(a, 0), ). Вводите элементы.);
  for i := 0 to length(a, 0) - 1 do
    read(a[i])
end;

procedure GetMas(var a: V; dim: integer; title: string);
begin
  SetLength(a, dim);
  InitMas(a, title);
end;

const
  n1 = 10;
  n2 = 15;

var
  A, B: V;

begin
  GetMas(A, n1, Массив А);
  GetMas(B, n2, массив B);
  writeln(Большее произведение положительных , max(ProdPos(A), ProdPos(B)))
end.

Тестовый прогон:
Массив А(10). Вводите элементы.
1 1 1 1 2 1 2 2 1 5
массив B(15). Вводите элементы.
1 0 2 4 0 1 -3 -4 1 2 3 1 -3 0 2
Большее произведение положительных 96


Не нашел нужный ответ?

Если ответ по предмету Информатика отсутствует или он оказался неправильным, то попробуй воспользоваться поиском других ответов во всей базе сайта.


Найти другие ответы
Самые новые вопросы