注册 登录
编程论坛 C++教室

C ++蜗牛问题

psyqin 发布于 2018-02-16 17:47, 1654 次点击
传说中能站在金字塔顶的只有两种动物,一种是鹰,一种是蜗牛。一只小蜗牛听了这个传说后,大受鼓舞,立志要爬上金字塔。为了实现自己的梦想,蜗牛找到了老鹰,老鹰告诉它金字塔高H米,小蜗牛知道一个白天自己能向上爬10米,但由于晚上要休息,自己会下滑5米。它想知道自己在第几天能站在金字塔顶,请聪明的你编写一个程序帮小蜗牛计算它需要几天可以站在塔顶。
我的代码如下:
#include<iostream>
using namespace std;
int main()
{
    int h,a=0,b=0;
    cin>>h;
    while(a<h)
    {
    a+=10;
    a-=5;
    b++;
    }
    cout<<b-1;
    return 0;
}
哪位大神告诉我,代码哪里错了?
4 回复
#2
ehszt2018-02-16 18:19
#include<iostream>
using namespace std;
int main()
{
    int h,a=0,b=0;
    cin>>h;
    while(a<h)
    {
    ++b;
    a+=10;
    if(a>=h)
    break;
    a-=5;
    }
    cout<<b;
    return 0;
}
#3
rjsp2018-02-16 21:27
我儿子在“幼升小”时考过类似的题目
最后一次不会下滑所以多爬5米,故需要 (h-5)/5 次,使用进一除法
C代码就是 (h-1)/5
#4
ehszt2018-02-17 16:38
回复 3楼 rjsp
只是5米以下都算0次。
#5
psyqin2018-02-18 22:22
谢谢楼上几位,问题解决
1