viết chương trình sắp xếp dãy A gồm N các số nguyên thành dãy không giảm ( Trong đó có sử dụng chương trình con để hoán đổi vị trí của hai số) Mọi người giúp em với. Em cần gấp trong chiều nay ạ. Cảm ơn mng
2 câu trả lời
uses crt;
var a:array[1..100]of integer;
i,n,tam,j:integer;
{---------------chuong-trinh-con----------------------}
procedure hoandoi(x,y:integer);
var tam:integer;
begin
tam:=x;
x:=y;
y:=tam;
end;
{--------------------chuong-trinh-chinh---------------------------}
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then
begin
hoandoi(a[i],a[j]);
end;
for i:=1 to n do
write(a[i]:4);
readln;
end.
program khong_giam;
uses crt;
var A:array[1..10000] of integer;
n,i,j:integer;
{---CT-con---}
procedure hd(var x,y:integer);
var tg:integer;
begin
tg:=x;
x:=y;
y:=tg;
end;
{---CT-chinh---}
BEGIN
clrscr;
write('Nhap N: '); readln(n);
for i:=1 to n do
begin
write('A[',i,']= '); readln(A[i]);
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if A[i]>A[j] then hd(A[i],A[j]);
write('Day khong giam la: ');
for i:=1 to n do write(A[i],' ');
readln;
end.