Một con ốc sên muốn bò lên ngọn cây để ăn lá non. Ban ngày ốc sên bò lên được a mét, nhưng ban đêm khi nó ngủ bị trôi xuống b mét. Gỉa sử con ốc đang đứng dưới gốc cây cao h mét . Viết chương trình nhập vào bán phim 3 số tự nhiên liên tiếp h,a,b ( 1<=b<a<=h<=1000) . Xuất ra màn hình số ngày cần thiết để ốc sên bò lên ngọn cây. VD Mời bạn nhập chiều cao cây: 5 Mời bạn nhập quãng đường bò lên: 2 Mời bạn nhập quãng đường tụt xuống:1 Số ngày cần thiết đẻ ốc sên bò lên ngọn cây: 4 GIẢI THÍCH LUÔN Ạ

2 câu trả lời

uses crt;
var h, a, b, res, t: longint;
begin
    clrscr;
    write('Mời bạn nhập chiều cao cây: '); readln(h);
    write('Mời bạn nhập quãng đường bò lên: '); readln(a);
    write('Mời bạn nhập quãng đường tụt xuống:'); readln(b);
    
    // Cho lên trước 1 ngày
    res:=1; t:=a;
    while (t < h) do
        begin
            // Tăng số ngày bò lên :))
            inc(res);
            // Tụt xuống :))
            t:=t - b;
            // Cho leo lên :))
            t:=t + a;
        end;
    writeln('Số ngày cần thiết đẻ ốc sên bò lên ngọn cây: ', res);
readln;
end.

- Bonus :))
uses crt;
var h, a, b: longint;
begin
    clrscr;
    write('Mời bạn nhập chiều cao cây: '); readln(h);
    write('Mời bạn nhập quãng đường bò lên: '); readln(a);
    write('Mời bạn nhập quãng đường tụt xuống:'); readln(b);
    
    if a = h then writeln('Số ngày cần thiết đẻ ốc sên bò lên ngọn cây: 1') else
    writeln('Số ngày cần thiết đẻ ốc sên bò lên ngọn cây: ', (h - a - 1) div (a - b) + 2);
readln;
end.

một ngày bò được a mét, trôi xuống b mét => cả ngày bò được (a - b) mét

gọi số ngày là x => (a - b).x = h => x = $\frac{h}{a - b}$ 

* Viết chương trình

program bo;

uses crt;

var a, b, h, x : real ;

begin

clrscr;

write('Moi ban nhap chieu cao cay :');readln(h);

write('Moi ban nhap quang duong bo len:');readln(a);

write('Moi ban nhap quang duong tut xuong :');readln(b);

x := h/(a-b);

writeln('So ngay can thiet de oc sen bo len ngon cay la :', x:8:2);

readln

end.

Câu hỏi trong lớp Xem thêm