{ Funktion: Selection-Sort, sortieren durch direkte Auswahl
  Autor   : DG1XPZ
  Sprache : Turbo Pascal 7.0}

program select;

type zahlenArray = array[0..9] of integer;
const zahlen: zahlenArray=(9,5,8,6,3,7,4,0,1,2);

procedure sort;
var laenge,i,j,min,temp: Integer;
begin
  laenge:=SizeOf(zahlen) div SizeOf(zahlen[0])-1;
  for i:=0 to laenge-1 do
  begin
    min:=i; 
    for j:=i+1 to laenge do
    begin
      if zahlen[j] < zahlen[min] then
      begin
        min:=j;
      end;
    end;
    temp:=zahlen[min];
    zahlen[min]:=zahlen[i];
    zahlen[i]:=temp;
  end;
end;

procedure ausgabe(z: zahlenArray);
var
  i: Integer;
begin
  for i:=0 to (SizeOf(zahlen) div SizeOf(zahlen[0]))-1 do
  begin
    write(z[i]);
    write(',');
  end;
  write('\b \n');
end;

begin
  sort;
  Writeln('Sortiert:');
  ausgabe(zahlen);
end.
