uses
crt;
procedure maxi;
var
a: array[1..100] of integer;
i, m, k, max: integer;
begin
randomize;
writeln('размерность массива');
repeat
readln(m);
until m in [2..60];
for i := 1 to m do
begin
a[i] := random(20) - 5;
end;
writeln('массив');
for i := 1 to m do
begin
write(a[i], ' ');
end;
max := a[1];
for i := 1 to m do
begin
if a[i + 1] > max then begin
max := a[i + 1];
end;
if a[i] < 0 then
begin
inc(k);
end;
end;
readln;
writeln('максамиальный элемент', ' ', max);
writeln('кол-во отрицательных', ' ', k);
end;
var
j: integer;
begin
for j := 1 to 4 do
begin
maxi;
end;
readln;
end.
Следующий вариант
program m1;
uses crt;
type
mas=array[1..60] of real;
var
a,b,c,d:mas;
i,n1,n2,n3,n4:byte;
max1,max2,max3,max4:real;
kol1,kol2,kol3,kol4:byte;
procedure input(n:byte;a:char; var massiv:mas);
var i:byte;
begin
for i:=1 to n do
begin writeln('Введите ', a,' [',i,']= ');
read(massiv[i]); end; end;
procedure poisk(massiv:mas; n:byte; var max:real; var kol:byte);
var
i:integer;
begin
max:=massiv[1];
for i:=1 to n do
if massiv[i]>max then max:= massiv[i];
kol:=0;
for i:=1 to n do
if massiv[i] < 0 then inc(kol);
end;
BEGIN
repeat
writeln('введите размерности массивов');
readln(n1,n2,n3,n4); until (n1 and n2 and n3 and n4) in[1..60];
input(n1,'a', a);
input(n2,'b', b);
input(n3,'c', c);
input(n4,'d', d);
poisk(a,n1,max1,kol1);
poisk(b,n2,max2,kol2);
poisk(c,n3,max3,kol3);
poisk(d,n4,max4,kol4);
writeln('maximum первого массива ', max1:8:3);
writeln('отрицательных элементов', kol1:2);
writeln;
writeln('maximum второго массива ', max2:8:3);
writeln('отрицательных элементов в нем', kol2:2);
writeln;
writeln('maximum третьего массива ', max3:8:3);
writeln('отрицательных элементов в нем', kol3:2);
writeln;
writeln('maximum четвертого массива ', max4:8:3);
writeln('отрицательных элементов', kol4:2);
writeln;
END.