题目大意:
一只蜗牛在H英尺高的底部,想爬到顶端。蜗牛可以在太阳升起的时候爬上U英尺,但是在晚上睡觉的时候会滑下D英尺。蜗牛的疲劳系数为F(百分比), 这意味着蜗牛在每一天都比前一天少爬(F/100*U)英尺 【这个地方一直理解错了*(理解成了每天都比前一天少爬[F/100*(前一天爬的高度)])】。 问:蜗牛第几天离开井?
还有注意细节,定义数据类型是double,理解题意的顺序执行过程,不要把顺序搞错了。
#include<stdio.h>
int main()
{
int day;
double H,U,D,F;
double s,sum;
while(scanf("%lf%lf%lf%lf",&H,&U,&D,&F),H)
{
s=U;
sum=0;
day=0;
while(1)
{
day++;
if(s>0)
sum+=s;
if(sum>H) break;
sum = sum-D;
if(sum<0)
break;
s=s-F*U/100.0;
}
if(sum>H) printf("success on day %d
",day);
else printf("failure on day %d
",day);
}
return 0;
}