Czy może ktoś mi objaśnić ten program sortowanie kubełkowe w pascalu?
program sort_kubelkowe;
uses crt;
var
t:array[1..9] of string;
z,k,i:integer;
s,p:string;
procedure wpisz;
begin
writeln('Ile elementow ma byc w tablicy?');
readln(k);
writeln('Podaj wyrazy do uporzadkowania.');
for i:=1 to k do
begin
readln(s);
t[i]:=s;
end;
end;
procedure sortuj;
begin
z:=0;
for z:=1 to k-1 do
for i:=1 to k-z do
begin
if t[i]>t[i+1] then
begin
p:=t[i];
t[i]:=t[i+1];
t[i+1]:=p;
end;
end;
end;
procedure wypisz;
begin
for i:=1 to k do
writeln(i,'. ',t[i]:3);
end;
begin
clrscr;
wpisz;
sortuj;
writeln;
writeln;
wypisz;
writeln;
writeln;
writeln('Aby zakonczyc wcisnij dowolny klawisz.');
readln;
end.