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)
– 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é.