ボールを落下、自由落下の所定の高さからボールが、半分の元の高さにグランドバウンスは、その後、秋、そしてリバウンド、......、など。どのくらいの距離の合計後の空気中のn番目の階でQ.ボール、?N番目のリバウンドの高さは?

コードA

# include<stdio.h>
# include<math.h>
int main()
{
	int h1,n,m,j,k;
	double sum=0,h2=0;
	scanf("%d %d",&h1,&n);
    if(n>0)                 //注意一定要讨论n==0这种情况
    {
        sum=h1;
	for(m=1;m<=n;m++)
	{
		sum+=h2*2;
		h2=h1/pow(2,m);   //这个地方调用函数了,运算速度慢
	}
    }
	printf("%0.1lf %0.1lf",sum,h2);
	return 0;
}

コード2

# include<stdio.h>
int main()
{
	int h1,n,m;
	double sum=0,h2=0,j=2;
	scanf("%d %d",&h1,&n);
    if(n>0)
    {
        sum=h1;
	for(m=1;m<=n;m++)
	{   
		sum+=h2*2;
		h2=h1/j;
        j*=2;       //更快
	}
    }
	printf("%0.1lf %0.1lf",sum,h2);
	return 0;
}

Sを追加する前に、観察し、変数h、非常に定期的に、
私は推測してみましょう:何の議論のn == 0ではありません。

公開された123元の記事 ウォンの賞賛8 ビュー20000 +

おすすめ

転載: blog.csdn.net/Du798566/article/details/104749794