刚开始没有把落地反弹经过的那段距离给考虑进去,以至于经过的距离就少算了。话不多说,直接看思路分析和代码:
代码如下:
static void Main(string[] args)
{
float distance = 0;
float height = 100;
Console.WriteLine("请输入要计算的次数:");
int count1 = Convert.ToInt32(Console.ReadLine());
int count = 0;
for(int i = 1; i <= count1; i++)
{
if(i<=1)
{
height = height / 2;
distance = 100;
}else
{
distance += height * 2;
height = height / 2;
}
count++;
}
Console.WriteLine("第"+count+"次碰到地面经过了:" + distance);
Console.WriteLine("第"+count+"次反弹:" + height);
Console.ReadKey();
}