描述
我们都知道ycb老师是一个阳刚的人,不仅如此,ycb老师还是一个很很绅士的人,一天他看到一个妹子被一个箱子挡住了路,于是他想移动这个箱子,帮助妹子清理路障,但是要是用力过猛会的话,ycb老师怕妹子认为自己是一个粗鲁的人,于是他想知道最小移动箱子的力是多大?
PS:忽略转动 , 地面水平,箱子看成质点,G=9.80665m/s^2,请注意是移动箱子(滑稽.jpg)。
输入
第一行输入m,n , m表示物体质量,n表示物体与地面摩擦系数 (0=
#include <iostream>
#include<cstdio>
#include<math.h>
using namespace std;
const double g = 9.80665;
const double PI = acos(-1.0);
//学到定义PI的另一种形式
const double eps=1e-9;
//double数值比较的标准,相当于0
double m, u ;
double f(double x)
{
return u*sin(x)+cos(x);
}
double SanFen()
{
double l=0,r=PI*0.5,m1,m2;
while(r-l>eps){
m1=l+(r-l)/3;
m2=r-(r-l)/3;
if(f(m1)>f(m2))
r=m2;
else
l=m1;
}
return f(l);
}
int main()
{
scanf("%lf %lf",&m,&u);
printf("%.6f\n",m*g*u/SanFen());
return 0;
}