const n=20;
var a:array [1..n] of integer;
i,max,maxi,min,mini:integer;
begin
write('Массив: ');
for i:= 1 to n do
begin
a[i]:=random(101)+50;
write (a[i],' ')
end;
max:=a[1];
maxi:=1;
min:=a[1];
mini:=1;
for i:= 1 to n do
begin
if a[i]>max then
begin
max:=a[i];
maxi:=i
end;
if a[i]<min then
begin
min:=a[i];
mini:=i
end
end;
writeln;
writeln('Максимальный элемент ',max,' и его номер ',maxi);
writeln('Минимальный элемент ',min,' и его номер ',mini)
end.
Или (если max или min элемент будет не один)
const n=20;
var a:array [1..n] of integer;
i,max,min:integer;
begin
write('Массив: ');
for i:= 1 to n do
begin
a[i]:=random(101)+50;
write (a[i],' ')
end;
max:=a[1];
min:=a[1];
for i:= 1 to n do
begin
if a[i]>max then max:=a[i];
if a[i]<min then min:=a[i]
end;
writeln;
for i:= 1 to n do
begin
if a[i]=max then writeln('Максимальный элемент ',max,' и его номер ',i);
if a[i]=min then writeln('Минимальный элемент ',min,' и его номер ',i)
end
end.
const
m = 10;
var
t: array[1..m] of integer;
i, n, nm, sm: integer;
begin
//Заполняем массив сл.числами и подсчитываем
//количество элементов и среднее арифметическое
//согласно условию задачи
for i := 1 to m do
begin
t[i] := random(-20, 20);write(t[i]:4);
if (i > 1) and (i <= m) then
if t[i] > t[i - 1] then n := n + 1
else if t[i] < t[i - 1] then begin
sm := sm + t[i];nm := nm + 1;
end;
end;
writeln;
writeln('число элементов больших предыдущего = ', n);
writeln('ср. арифметическое элементов меньших предыдущего = ', sm / nm);
end.
Тестовое решение:
6 13 19 8 -19 -11 -20 -15 -19 -13
число элементов, больших предыдущего = 5
среднее арифметическое элементов, меньших предыдущего = -12.5