问题标题: 酷町堂:大佬们,4385到底咋写啊啊啊qwq

0
0

0
已采纳
朱小川
朱小川
缔造者
缔造者

do{ a*=0.98; sum+=a; cnt++; } while(sum<d);

0
吕梓瑜
吕梓瑜
初级天翼
初级天翼

根据题意,要定义一个小数型变量,也就是double一个x然后输入它(cin>>x),因为根据题意,我们并不知道要循环多少次,也就是不能用for循环,要用while循环,然后判断和是否小于x,所以要定义一个double型的变量sum,赋值为0,回归一下那while循环的结构就是这样的:while(sum<x){},我们还需要计算次数,所以要再定义一个int型的t,初始值为0,还有一个推进器的距离,所以要定义一个double型的t,初始值为2;

循环里面先要记录次数,也就是t++,接着要算推进器的和,也就是sum+=s;最后要把推进器的距离重新算,题目是“接下来的每一次推进距离都只有上一次距离的98%”那就要s=s*0.98;

 

最后要在循环外面输出次数t;

这是代码:

double x,sum=0,s=2;
int t=0;
cin>>x;
while(sum<x){
    t++;
    sum+=s;
    s=s*0.98;
}
cout<<t;
return 0;

 

 

嗷呜~

我要回答