Cách kiểm tra lỗi trong Pascal
ĐĂNG BÀI NGAY để cùng thảo luận với các CAO THỦ trên mọi miền tổ quốc. Hoàn toàn miễn phí! [*] [Thủ Thuật] Kiểm tra tính chính xác của chương trình pascal Khi bạn viết một chương trình pascal về một bài toán nào đấy, mà chương trình bạn chưa đúng một vài chỗ mà code thì dài bạn không biết nên kiểm tra từ đâu vậy đây là một thủ thuật rất cần thiết để kiểm tra thuật toán đó..nó sẽ giúp ích cho bạn khi mà chương trình của mình chưa đúng nhất là trong các cuộc thi.do mình không biết chụp màn hình khi mở pascal nên không có ảnh minh hoạ mong các bạn thông cảm !!! [COLOR=#000000] [COLOR=#0000BB]program pascal_com[/COLOR][COLOR=#007700];
var [/COLOR][COLOR=#0000BB]n[/COLOR][COLOR=#007700]:[/COLOR][COLOR=#0000BB]integer[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]procedure nhap[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]begin
write[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'nhap n='[/COLOR][COLOR=#007700]);
[/COLOR][COLOR=#0000BB]readln[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]n[/COLOR][COLOR=#007700]);
[/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]procedure xuli[/COLOR][COLOR=#007700];
var [/COLOR][COLOR=#0000BB]a[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]j[/COLOR][COLOR=#007700]:[/COLOR][COLOR=#0000BB]integer[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]begin
j[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]a[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700];
for [/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]1 to n [/COLOR][COLOR=#007700]do
if [/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700]<=[/COLOR][COLOR=#0000BB]j then a[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]i
[/COLOR][COLOR=#007700]else [/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]begin
nhap[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]xuli[/COLOR][COLOR=#007700];
[/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700].
[/COLOR][COLOR=#0000BB][/COLOR] [/COLOR] ---------------------------------- Với nhiều chương trình bạn viết trong pascal mà khi bạn chạy bằng những bộ test nhỏ thì nó vẫn hiện ra kết quả đúng khi đó bạn tưởng rằng chương trình đúng rồi mà thực ra trong chương trình bạn vẫn có thể có một số chỗ sai mà bạn chưa biết. Vậy với thủ thuật này nó có thể cho bạn biết chương trình có lỗi bằng cách vd: đây là chương trình để test
[COLOR=#000000] [COLOR=#0000BB]program pascal_com[/COLOR][COLOR=#007700]; var [/COLOR][COLOR=#0000BB]n[/COLOR][COLOR=#007700]:[/COLOR][COLOR=#0000BB]integer[/COLOR][COLOR=#007700];[/COLOR][COLOR=#0000BB]m[/COLOR][COLOR=#007700]:[/COLOR][COLOR=#0000BB]shortint[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]procedure nhap[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]begin write[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'nhap n='[/COLOR][COLOR=#007700]); [/COLOR][COLOR=#0000BB]readln[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]n[/COLOR][COLOR=#007700]); [/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]procedure xuli[/COLOR][COLOR=#007700]; var [/COLOR][COLOR=#0000BB]a[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700],[/COLOR][COLOR=#0000BB]j[/COLOR][COLOR=#007700]:[/COLOR][COLOR=#0000BB]integer[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]begin m[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]n[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]j[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]a[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]0[/COLOR][COLOR=#007700]; for [/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]1 to n [/COLOR][COLOR=#007700]do if [/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700]<=[/COLOR][COLOR=#0000BB]j then a[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]i [/COLOR][COLOR=#007700]else [/COLOR][COLOR=#0000BB]b[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]i[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]begin nhap[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]xuli[/COLOR][COLOR=#007700]; [/COLOR][COLOR=#0000BB]end[/COLOR][COLOR=#007700]. [/COLOR][/COLOR] [/INDENT] [*][COLOR=#000000][COLOR=#007700] [/COLOR][/COLOR]
Last edited by a moderator: 12 Tháng sáu 2012
Chắc em dùng turbo pascal hả Dùng free pascal thì sẽ báo lỗi ngay
Exit code 201 |