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

Ответы 2

  • 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 * pend;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
  • procedure Vvod(Var Q:mas; p:integer);var i:integer;beginfor i:=1 to p doread(Q[i]);end;program obrab(N:mas; w:integer; var max:real;); var i:integer;beginmax:=1;for i:=1 to w dobeginif N[i]>0 thenmax:=max*N[i];end;end;program sravnenie(U:mas; O:mas; m.r:integer; maxA,maxB:real);var i,j:integerbeginif maxA>maxB thenbeginfor i:=1 to m dowrite(U[i]);end elsebeginfor i:=1 to r dowrite(O[i]);end;end;beginwriteln('vvedite kol-vo elementov mas1');readln(n);Vvod(A,n);writeln('vvedite kol-vo elementov mas2');readln(l);Vvod(B,l);obrab(A,n,max1);obrab(B,l,max2);sravnenie(A,B,n,l,max1,max2);end.
    • Автор:

      freeman73
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years