Viết chương trình nhập vào mảng n từ bàn phím và in ra màn hình sắp xếp dãy số tăng dần !!Giải thích kĩ từng bước!!

Viết chương trình nhập vào mảng n từ bàn phím và in ra màn hình sắp xếp dãy số tăng dần
!!Giải thích kĩ từng bước!!

0 bình luận về “Viết chương trình nhập vào mảng n từ bàn phím và in ra màn hình sắp xếp dãy số tăng dần !!Giải thích kĩ từng bước!!”

  1. Chương trình:

    program sapxep;

    uses crt;

    var A:array[1..1000] of integer;

          n,i,j,tg:integer;

    begin

           clrscr;

           write(‘Nhap so luong phan tu: ‘);  readln(n);

           for i:=1 to n do

                  begin

                         write(‘Nhap so thu ‘,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

                                       tg:=A[i];

                                       A[i]:=A[j];

                                       A[j]:=tg;

                                end;

           for i:=1 to n do write(A[i],’ ‘);

           readln;

    end.

    Giải thích:

    Ban đầu ta nhập dữ liệu

    Tiếp theo ta thực hiện sắp xếp:

    Dãy tăng dần là số trước nhỏ hơn số sau 

    Ta xét từng vị trí, nghĩa là từ vị trí ấy ta tìm số nhỏ nhất và vị trí ấy chính là số nhỏ nhất trong khoản đó

    Cuối cùng in mảng đó ra

    Bạn cứ lấy ví dụ ra giấy bạn sẽ thấy

    Bình luận
  2. Uses Crt;    {Khai báo thư viện}
    Var A:array[1..1000] of integer;
           i,j,n,tg: integer;

    Begin

     Clrscr; {Lệnh xóa màn hình}
    Writeln(‘Nhap so phan tu n vao day:’);  Readln(n); {Đọc biến n}
    For i:=1 to n do 
      Begin
     Writeln(‘Nhap so thu’,i,’:’); Readln(A[i]); {Đọc biến A[i]}
      End; {Kết thúc lệnh ghép}

    For i:= 1 to n-1 do {Đối với i được gán = 1 đến n-1 thì}
    For j:=i+1 to n do {Đối  với j được gán = i+1 đến n t thì}
     If A[i]>A[j] then
      Begin
     tg:=A[i];
     A[i]:=A[j];
     A[j]:=tg;
      End;
    Writeln(‘Day so sap xep theo thu tu tang dan la:’);

    For i:= 1 to n do 
      Write(A[i]:3); {Giãn cách các số sang ngang nếu là write, theo dọc nếu là writeln}
    Readln

    End.
    *Nhớ tick và chọn làm ctrhn cho bên mình khi có thêm 1 ctrl nữa nhé! Thanks so much :33 (Có gì không hiểu, comment bên dưới)

    Bình luận

Viết một bình luận