Bài tính tiền ngân hàng thì tôi nghĩ giải như sau sẽ hay hơn và không cần dùng vòng lặp.Vì lãi không cộng dồn nên bài này không phải là 1 cấp số nhân, nếu là cấp số nhân thì ta chỉ việc dùng ln là xong,theo như bài giải trên ta sẽ có:
a:số tiền ban đầu, l:=0.003; lãi trong mỗi tháng:s:=a*l;
b:số tiền cần đạt, b:=a+k*s với k là số tháng cần gửi vậy k:=(b-a)/s và ta làm tròn k.kt lại k.Đoạn code như sau:
begin
l:=0.003*a;
k:=round((b-a)/l);
if a+(k-1)*l>=b then writeln('so thang can gui la',k-1,'thang')
else
if (a+k*l>=b) then writeln('so thang can gui la',k,'thang')
else writeln('so thang can gui la ',k-1,'thang');
end;
Bookmarks