PTA:7-94 非常彈的球 (30分)(物理運動學)

7-94 非常彈的球 (30分)

在這裏插入圖片描述
圖片來自前輩的,來源博客鏈接:https://www.cnblogs.com/8023spz/p/10415991.html
在這裏插入圖片描述
根據圖上可得Smax=v^2/g,再聯立Ek=1/2mv*v,得到最大距離公式:

s=2Ek /(mg)

然後每次讓Ek縮減,即每次縮減了p%;循環縮小精度即可
注意 題目給的是放大的m,所以計算時m除以100纔行;
推薦另一前輩博客:(寫的很詳細了)
https://blog.csdn.net/weixin_43824158/article/details/88747876

AC代碼

#include<bits/stdc++.h>
using namespace std;
int main()
{
	//公式:s=2*Ek/(m*g) //這裏的m未放大的,題目是放大的 
    int w,p;
    cin>>w>>p;
    double dis=0;
    double s=1000*100*2/(w*9.80);
    while(s>=1e-9)
    {
        dis+=s;
        s=s-s*p/100;//能力不停的損失 
    }
    cout<<fixed<<setprecision(3)<<dis<<endl;
    return 0;
}

歡迎大家批評改正!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章