var
arr:array[1..1000] of integer;
i,N:integer;
max:integer;
begin
max:=1;
write('Укажите кол-во эл-ов - ');
read(N);
for i:=1 to N do//Присваивание и вывод массива
begin
arr[i]:=1+random(100);
write(arr[i],' ');
if arr[i]>max then max:=arr[i];
end;
writeln;
writeln('Максимальный эл-т - ',max);
for i:=1 to N do//Увеличение чет. эл-ов
begin
if arr[i] mod 2=0 then arr[i]:=arr[i]+max;
write(arr[i],' ');
end;
end.
Объяснение:
2)
program fofgogjoj;
const nmax=100;
var
m:array[1..nmax] of integer;
n,i,j,k:byte;
a,b,x:integer;
begin
randomize;
repeat Write('Размер массива до ',nmax div 3,' n=');
readln(n);
until n in [1..nmax div 3];
Writeln('Исходный массив:');
for i:=1 to n do
begin
m[i]:=random(50);
Write(m[i],' ');
end;
Writeln;
Writeln;
Write('Введите число для вставки перед a=');
Readln(a);
i:=1;
k:=0;
while i<=n do
begin
if m[i]>a then
begin
n:=n+1;
k:=1;
for j:=n downto i+1 do
m[j]:=m[j-1];
m[i]:=a;
i:=i+2; end
else i:=i+1;
end;
if k=0 then
Writeln('Элементов больше ',a,' нет')
else
begin
Writeln('Массив после вставки числа ',a,' перед большими ',a);
for i:=1 to n do
Write(m[i],' ');
Writeln;
Writeln;
Write('Введите число для вставки после b=');
Readln(b);
i:=1;k:=0;
while i<=n do
if m[i]<b then
begin
n:=n+1;
k:=1;
for j:=n downto i+2 do
m[j]:=m[j-1];
m[i+1]:=b;
i:=i+2; end
else
i:=i+1;
if k=0 then
Writeln('Элементов меньше ',b,' нет')
else
begin
Writeln('Массив после вставки числа ',b,' после меньших ',b);
for i:=1 to n do
Write(m[i],' ');
end;
end;
readln
end.