BT sx mang

Chia sẻ bởi Huỳnh Công Dũ | Ngày 17/10/2018 | 42

Chia sẻ tài liệu: BT sx mang thuộc Tin học 8

Nội dung tài liệu:

Dưới đây là 2 chương trình sắp xếp dãy số có sử dụng chương trình con
(2 thủ tục nhap và doicho) và không dùng CT con; song có một điều lạ lùng là
tại sao chương trình không sử dụng CTC thì chạy được (đúng), còn chtrình
có sử dụng CTC thì lại chạy không đúng (CT không báo lỗi nhưng nó ko sx).
Bạn nào có khả năng phát hiện ra lỗi thì chỉ và sửa giúp mình với.
Xin chân thành cảm ơn!

Program Sapxeptangdan;
Var n,i,j:integer; a:array[1..20] of integer;

Procedure nhap;
Begin
write(`Ban muon nhap bao nhieu so ? `);readln(n);
writeln(`Nhap vao `,n,` so nguyen: `);
For i:=1 to n do
Begin
write(`a`,i,`= `); readln(a[i]);
end;
end;

Procedure doicho(a,b:integer);
Var tg:integer;
Begin
tg:=a ; a:=b; b:=tg;
end;
{CHUONG TRINH CHINH }
Begin
Nhap;
For i:=1 to n - 1 do
For j:=i+1 to n do
if a[i] > a[j] then doicho(a[i],a[j]);

writeln(`Day so sap xep tang dan la: `);
For i:=1 to n do write(a[i],` `);
readln;
end.
CHƯƠNG TRÌNH TRÊN CHẠY ĐƯỢC NHƯNG KHÔNG CHO KQ ĐÚNG, CÁC
SỐ VẪN GIỮ THỨ TỰ Y NGUYÊN NHƯ KHI NHÂP


CHƯƠNG TÌNH DƯỚI ĐÂY KHÔNG DÙNG CTC THÌ LẠI CHẠY ĐÚNG:
(Bạn có thể copy rồi lưu dưới 2 tên files khác nhau trong Notepad, sau đó
đổi đuôi txt thành đuôi pas là chạy được trong Pascal
Program Sapxeptangdan;
Var tg,n,i,j:integer; a:array[1..20] of integer;
Begin
write(`Ban muon nhap bao nhieu so ? `);readln(n);
writeln(`Nhap vao `,n,` so nguyen: `);
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
{ Muon sx giam dan chi don gian doi dau > thanh dau < o dong tren }
Begin
tg:=a[i] ; a[i]:=a[j]; a[j]:=tg;
end;
writeln(`Day so sap xep tang dan la: `);
For i:=1 to n do write(a[i],` `);
readln;
end.
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...

Người chia sẻ: Huỳnh Công Dũ
Dung lượng: 28,50KB| Lượt tài: 1
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)