题目描述
小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游2米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的98%。现在小玉想知道,如果要游到距离x米的地方,她需要游多少步呢。请你编程解决这个问题。
输入格式
输入一个数字(不一定是整数,小于100m),表示要游的目标距离。
输出格式
输出一个整数,表示小玉一共需要游多少步。
输入输出样例
输入
4.3
输出
3
import java.util.Scanner;
public class P1423小玉在游泳 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
double n=in.nextDouble();
int i=0,ans; //i代表走几步,ans代表答案
double sum=0,s=2.0; //sum代表过程中距离,s初始一步距离
while (sum<n) {
sum+=s;
s*=0.98;
i++;
if (sum+s>=n) ans=i+1; //如果达到要求,输出答案
}
System.out.println(i);
}
}