Помогите доработать код пожалуйста (Сортировать)

ё12ё1

const n=10;

var
a: array[1..n] of integer;
i:integer;
k:integer;

begin
randomize;
for i:=1 to n do
a[i] := random(101) - 50;
Writeln(a);
k:=0;
for i:=1 to n do
if a[i]>0 then k:=k+1;
Writeln('Кол-во элементов =',k);
const
n=10;
var
a:array[1..n] of real;
i,k:integer;
S:real;
begin
randomize;
for i:=1 to n do begin
a[i] := random(100) - 50;
if a[i]>0 then
k:=i;
end;
Writeln(a);
for i:=k to n do
S:=S+a[i];
writeln('Cумма элементов массива расположенных после последнего элемента равна ',S);
end.

Так а проблема в чем именно?

Для первой части (сделать, чтобы сначала были элементы больше 1) наверно можно просто пройти один раз массив переставляя все подходящие элементы в начало (передвинуть все элементы до текущего).
А во второй части (отсортировать) просто взять алгоритм, создать процедуру принимающую индексы начала и конца, и вызвать два раза с соотв. индексами.


И форматируйте код нормально.

Форматирование отступами в Паскале

Для приведения уже имеющегося кода в более-менее норм вид можно засунуть его в какой-нибудь онлайн форматер или нажать соответствующую кнопку в некоторых редакторах кода/IDE.