Code:
Cách 1:
*Tăng dần:
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
*Giảm dần:
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]<a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
Cách 2:
*Tăng dần:
for i:=1 to n do
for j:=1 to i-1 do
if a[i]<a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
*Giảm dần:
for i:=1 to n do
for j:=1 to i-1 do
if a[i]>a[j] then begin t:=a[i];a[i]:=a[j];a[j]:=t end;
Giải thích:
Cách 1:
- Cho i chạy từ 1 đến n-1
- Cho j chạy từ i+1 đến n
- Nếu a[i]>a[j] thì đổi chỗ hai số (để đổi số bé nhất lên đầu)
- Tương tự với a[i]<a[j] thì đổi số lớn nhất lên đầu
Cách 2:
- Cho i chạy từ 1 đến n
- Cho j chạy từ 1 đến i-1
- Nếu a[i]<a[j] thì đổi chỗ hai số (để đổi số bé nhất lên đầu)
- Tương tự với a[i]>a[j] thì đổi số lớn nhất lên đầu