In ra các ước của một số nguyên dương n với Pascal

358
Lập trình Pascal

Bài toán. Viết chương trình in ra tất cả các ước của một số n (Với n được nhập từ bàn phím)

Thuật Toán:

– Cho biến i chạy từ 1 đến n. Nếu n chia hết cho i thì in ra i.

Program timUoc;
uses crt;
Var n, i: integer;
Begin
    clrscr;
    Write('Nhap so n ='); readln(n);
    For i:=1 to n do if n mod i = 0 then write(i:3,',');
    readln
end.

Nhận xét: Chương trình trên có hai điểm yếu:

– In dư một dấu phẩy ở cuối dãy các ước.

– Khi n = 0 thì không in một số nào trong khi mọi số đều là ước của 0.

Hãy tìm cách khắc phục yếu điểm này nhé.