Пользователь вводит пятизначное десятичное число. По полученному числу строится новое десятичное число по следующему правилу.
1) Вычисляются два числа — сумма первой, третьей и пятой цифр и сумма второй и четвёртой
цифр заданного числа.
2) Полученные два числа записываются друг за другом в порядке неубывания (без разделителей).
Пример: исходное число: 14351. Поразрядные суммы: 5, 9. Результат: 95.
В твоё распоряжение предоставляется функция int obrez (char*). Она принимает единственный аргумент - указатель на строку, которую ты хочешь обрезать; делает её обрезание; и возвращает целое число - количество отрезанных хвостовых пробелов.
Обрезание делается методом последовательного забивания вместо хвостовых пробелов нулевого символа.
В main показано использование этой функции на примере ввода строки с клавиатуры. Если хочешь изменить или удалить выдачу обрезанной строки на экран, - то делай что требуется.
Если предполагаешь шалить с памятью, то корректность указателей проверяй сам, функция obrez этого, ес-но, не делает.
Рабочий код из вашего может быть таким:
var
A: array [1..5] of integer;
g, j, k, l: byte;
begin
randomize;
for j := 1 to 5 do
begin
A[j] := random(9);
writeln(A[j]);
end;
for j := 1 to 5-1 do
begin
for g := j+1 to 5 do
begin
if A[j] > A[g] then begin
K := A[j];
A[j] := A[g];
A[g] := K;
end;
end;
end;
for j := 1 to 5 do
write(A[j]);
end.