解题思路:
通过题目分析可知,小玉游得每一步的距离都是不同的。但是小玉,游n步,游出的距离,我们是可以计算出来的。就是把n步游泳的距离相加。这时,我们可以和目标距离进行比较,如果达到目标,则停止游泳。否则,继续游。同时,累加游泳的距离。然后再判断。以此循环,直到满足目标距离。
程序:
#include<iostream>
using namespace std;
int main(){
int stepNum = 0; //游泳的步数
double stepSize = 2/0.98;
double swimSize = 0;//游泳的长度
double distance; //目标距离
cin>>distance;
while(swimSize < distance){
stepNum++;
swimSize += stepSize*0.98;
stepSize *= 0.98;
}
cout<<stepNum; //输出
return 0;
}
程序运行结果: