*/
# include<stdio.h>
# include<math.h>
/*void ReBack(double M)
{
double back, sum = M;
int i, N;
scanf_s("%d", &N);
back = M * pow(0.5, N);
for (i = 1; i <= N; i++)
sum += 2*M * pow(0.5, i);
sum -= back * 2;
printf("%.2lf %.2lf", back, sum);
}
int main()
{
double M;
scanf_s("%lf", &M);
ReBack(M);
return 0;//第六次落地,和第五次回弹
}
#include<stdio.h>
int main()
{
int m, n;
float S = 0, T;
scanf("%d%d", &m, &n);
S = m;
T = m / 2;
for (int i = 1; i < n; i++)
{
S += 2 * T;
T = T / 2.0;
}
printf("%.2f %.2f", T, S);//第五次落地,i=0先回弹一次,i=4时和第五次回弹值相等
方法三等比数列求解也行,#include <stdio.h>
#include <math.h>
int main()
{
double M,N;
double Lushang,Luxia;//分别用来计算上升/下降的总路程
scanf("%lf %lf",&M,&N);
Lushang=M*(1-pow(1.0/2.0,N-1)); //计算上升的总路程
Luxia=2*M*(1-pow(1.0/2.0,N)); //计算下降的总路程
printf("%.2lf %.2lf\n",M*pow(1.0/2.0,N),Lushang+Luxia);
//pow是幂次函数
return 0;
}*/