даны масивы A(10) B(15). напечатать массив в котором произведение положительных элиментов больше. паскаль с помощью подпрограммы .Процедуры, ввод с клавиатуры
Answers & Comments
paiva72
Procedure Vvod(Var Q:mas; p:integer); var i:integer; begin for i:=1 to p do read(Q[i]); end;
program obrab(N:mas; w:integer; var max:real;); var i:integer; begin max:=1; for i:=1 to w do begin if N[i]>0 then max:=max*N[i]; end; end; program sravnenie(U:mas; O:mas; m.r:integer; maxA,maxB:real); var i,j:integer
begin if maxA>maxB then begin for i:=1 to m do write(U[i]); end else begin for i:=1 to r do write(O[i]); end; end;
begin writeln('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.
1 votes Thanks 1
paiva72
подправил, вроде должно быть все верно, в основной программе думаю сам описать сможешь переменные глобальные
paiva72
должна быть? попросили помочь, я помог, описать глобальные переменные он сможет сам, т.к. это основа, которую знает каждый
paiva72
проверить на работоспособность не могу, т.к. не имею паскаля под рукой
Answers & Comments
var i:integer;
begin
for i:=1 to p do
read(Q[i]);
end;
program obrab(N:mas; w:integer; var max:real;);
var i:integer;
begin
max:=1;
for i:=1 to w do
begin
if N[i]>0 then
max:=max*N[i];
end;
end;
program sravnenie(U:mas; O:mas; m.r:integer; maxA,maxB:real);
var i,j:integer
begin
if maxA>maxB then
begin
for i:=1 to m do
write(U[i]);
end
else
begin
for i:=1 to r do
write(O[i]);
end;
end;
begin
writeln('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.