Cần giúp 1 bài toán Pascal !!

:..saothienco..:

Legend of Zelda
Lão Làng GVN
Tham gia ngày
25/10/05
Bài viết
1,187
Reaction score
39
Ai pro Pascal có thể giải giùm mình bài này với :p :
Nhập 1 mảng số thực và sắp xếp mảng theo thứ tự tăng dần :D
Do tình hình là năm ngoái mải chơi quá nên năm nay phải học lại Pascal ::( , giờ thầy cho bài kiểm tra về nhà làm , kẹt bài này quá chưa làm dc mà 2 ngày nữa phải nộp rùi >"<
Thx các bạn trước nhé :D !!!!
 
Mã:
const
    fi = 'test.inp';
    fo = 'test.out';
    mn = 10000+1;
type
    int = 0..10000000;
    arr = array [0..mn] of real;
var
    f : text;
    n : int;
    a : arr;
procedure input_data;
var i,j : int;
begin
assign(f,fi); reset(f);
    readln(f,n);
    for i :=1 to n do read(f,a[i]);
close(f);
end;

procedure swap(a,b : real);
var tg : real;
begin
    tg := a; a := b; b := tg;
end;

procedure qsort(l,r : int);
var i,j : int;
     mid, tg : real;
begin
    if l >= r then exit;
    i := l;
    j := r;
    mid := a[(i + random(i-j+1)];
    repeat
      while a[i]<mid do inc(i);
      while a[j]>mid do dec(j);
      if i<=j then
        begin
          tg := a[i]; a[i] := a[j]; a[j] := tg;
          inc(i); dec(j);
        end;
    until i>j;
    qsort(l,j); qsort(i,r);
end;



procedure output_data;
var i,j : int;
begin
assign(f,fo); rewrite(f);
    qsort(1,n);    
    for i := 1 to n do write(f,a[i],' ');
close(F);
end;

begin
input_data;
output_data;
end.

quick sort. Về tự compile đi, vừa code chay xong chưa chạy thử#>:)
 
cảm ơn bạn nhiều nhé :x
Àh còn 1 câu này nữa , mình cũng ko biết làm thế nào luôn >"< , cái này là về cấu trúc máy tính :
Hãy thiết kế bộ nhớ ROM bios để nhớ mã ASCII của các ký tự trong tên của bạn
Tên mình là : Trần Việt Anh
Ai làm dc giúp giùm mình nhé :D
 
Back
Top