{ Funktion: Bubble-Sort, sortieren durch direkten Nachbartausch
  Autor   : DG1XPZ
  Sprache : Turbo Pascal 7.0}

program bubble;

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,temp: Integer;
begin
  laenge:=SizeOf(zahlen) div SizeOf(zahlen[0])-1;
  for i:=0 to laenge-1 do
    for j:=1 to laenge do
      if zahlen[j-1] > zahlen[j] then
      begin
        temp:=zahlen[j-1];
        zahlen[j-1]:=zahlen[j];
        zahlen[j]:=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.
