一个简单的题目总是出错,求大神解答
一球从100m处下落,每次落地后反弹回原高度的一半,再落下,求在第十次落地时共经过多少m?我是这么写的却总是不对啊,求指出哪里错了啊
int i=1;
double x;
while(i<=10)
{
double t=100,sum=0;
t=t*pow(1/2,(i-1));
sum=sum+2*t;
x=sum-100;
i++;
}
cout<<"x="<<x<<endl;
#include <iostream> using namespace std; int main() { const double a = 100; const int n = 10; // 2*a + (2*a)/2 + (2*a)/4 + (2*a)/8 + (2*a)/16 + (2*a)/32 + (2*a)/64 + (2*a)/128 + (2*a)/256 + (2*a)/512 - a // == 4*a*( 1 - pow(0.5,n) ) - a cout << 4*a * ((1<<n)-1) / (1<<n) - a << endl; return 0; }