Рекурсия в сортировке простым выбором? Вот это поворот. Ну да ладно. Как-то так, например:
Код:
procedure SelectionSort(A: mass; n: integer; i: integer);
var
min, t: integer;
begin
t:=A[i];
min:=i;
for j:=i+1 to n do
if (A[min]>A[j])then
min:=j;
if (min<>i) then
begin
A[i]:=A[min];
A[min]:=t;
end;
if i < n then
SelectionSort(a, n, i + 1);
end;
А главную процедуру можно сократить.
Код:
vvodposl(a,n);
vivodposl(a,n,true);
SelectionSort(A,n,1);
vivodposl(a,n,false);