procedure sort (var a:elementlist; n: integer);
{sort the n integers a[1..n] into ascending order}
var i, j, k, t: integer;
begin
    for
i:=1 to n do
    begin

        j:=i;
        {find the smallest integer in a[j..n]}
        for k:=j+1 to n do
          if
a[k] <a[j] then j:=k;
        {interchange}
        t:=a[i]; a[i]:= a[j; a[j]:= t;
    end; {of for i}
end; {end sort}