Python
from random import randint
n=int(input('Введите количество элементов массива : '))
if n%2!=0:
n=n+1
a=[0]*n
for i in range (0, n):
a[i]=randint(1,100)
print(a)
i=0
k=0
# сортируем первую часть массива по возрастанию
while i< n//2-1:
if a[i]>a[i+1]:
k=a[i]
a[i]=a[i+1]
a[i+1]=k
i=-1
i +=1
# сортируем вторую часть массива по убыванию
while i < n-1:
if a[i]<a[i+1]:
k=a[i]
a[i]=a[i+1]
a[i+1]=k
i=n//2-1
i +=1
print(a)
function summa(n:integer):integer;
var a,s:integer;
begin
a:=abs(n);
s:=0;
while a>0 do
begin
s:=s+a mod 10;
a:=a div 10;
end;
summa:=s
end;
const n=10;
var A:array [1..n] of integer;
j,i,k:integer;
begin
writeln('Исходный массив: ');
for i:=1 to n do
begin
A[i]:=random(15)+1;
write(A[i]:4);
end;
for i:=1 to n-1 do
begin
for j:=1 to n-1 do
if summa(A[j])<summa(A[j+1]) then
begin
k:=A[j];
A[j]:=A[j+1];
A[j+1]:=k
end;
end;
writeln;
writeln('Отсортированный массив: ');
for i:=1 to n do
write(A[i]:4);
readln
end.