Nhập vào 1 mảng, đưa số phần tử dương về đầu và số phần tử âm về cuối mảng. Sắp xếp mảng theo thứ tự tăng dần.(làm theo kiểu dữ liệu nha mn )

2 câu trả lời

Program FNG;
Uses crt;
Var A,B,C: array[1..1000] of longint;
    n,i,j,tg,da,dd: longint;
Begin
        Clrscr;
        Write('Nhap n: '); Readln(n);
        da:=0; dd:=0;
        For i:=1 to n do
        Begin
                Write('A[',i,'] = ');
                Readln(A[i]);
                If A[i]>0 then
                Begin
                        inc(dd);
                        B[dd]:=A[i];
                End;
                If A[i]<0 then
                Begin
                        inc(da);
                        C[da]:=A[i];
                End;
        End;

        For i:=1 to dd-1 do
                For j:=i+1 to dd do
                        If B[i]>B[j] then
                        Begin
                                tg:=B[i];
                                B[i]:=A[j];
                                B[j]:=tg;
                        End;
        For i:=1 to dd do Write(B[i],' ');

        For i:=1 to da-1 do
                For j:=i+1 to da do
                        If C[i]>C[j] then
                        Begin
                                tg:=C[i];
                                C[i]:=C[j];
                                C[j]:=tg;
                        End;
        For i:=1 to da do Write(C[i],' ');

        Readln
End.

var t,n,i,j:longint;

     a: array [1..1000] of longint;

begin

write('Nhap n: '); readln(n);

for i:=1 to n do

read(a[i]);

writeln;

for i:=1 to n-1 do

for j:=i+1 to n do

if a[i] > a[i] then 

begin
t:=a[j];
a[j]:=a[i];
a[i]:=t;
end;

writeln('Mang da duoc sap xep la: ');

for i:=1 to n do

write(a[i],' ');

readln;

end.

Câu hỏi trong lớp Xem thêm