oto co wyskrobałem na lekcji:
program sortme;
uses crt;
type TTab=packed array [0..100] of Integer;
var Tab: TTab;
I, J, K, tmp,n,m, count: integer;
begin
Write('Podaj ilo˜† element˘w: ');
ReadLN(n);
Count:=N;
randomize;
for I:=0 to n do
begin
Tab[I]:=Random(100);
end;
m:=n-1;
while M>0 do
begin
for K:=0 to m do
begin
if Tab[K]>Tab[K+1] then
begin
Tab[K]:=Tab[K] xor Tab[K+1];
Tab[K+1]:=Tab[K+1] xor Tab[K];
Tab[K]:=Tab[K] xor Tab[K+1]
n:=k;
end;
end;
if m=n-1 then
break;
m:=N-1;
end;
for I:=0 to Count do
Write(Tab[I]:4);
end.
Pisałem to na lekcji z pamięci, a zadanie polegało na jak najbardziej optymalnym algorytmie na sortowanie bąbelkowe. Co prawda zrobiłem najszybcie i najlepiej, ale nauczycielka uparcie twierdzi że da się cos jeszcze poprawić. Tylko co?