Applese 的减肥计划(C++)
题目描述
Applese 最近又长胖了,于是它打算减肥——练习举重。
他在举重的时候用两只手往不同方向用力,从而把杠铃举起来。
已知 Applese 两只手分别产生的力的大小,以及它们之间的夹角,试求两力合力的大小。
输入描述:
仅一行三个整数 f1,f2,a,分别表示两只手产生的力的大小以及它们之间的夹角。
输出描述:
输出一个实数表示两力合力的大小,要求相对误差或绝对误差不超过 10−610^{−6}10−6。
严格来讲,如果你的答案是 a,而标准答案是 b,那么当 ∣a−b∣max(1,∣b∣)≤10−6\frac{|a−b|}{max(1,|b|)}≤10^{−6}max(1,∣b∣)∣a−b∣≤10−6 时,你的答案会被认为是正确的。
示例1
输入
6 8 90
输出
10.0000000000
示例2
输入
10 10 60
输出
17.3205080757
备注:
1≤f1,f2≤1001≤f_1,f_2≤1001≤f1,f2≤100
0≤a≤1800≤a≤1800≤a≤180
解题思路:
简单的物理题。
由余弦定理,合力大小为f21+f22+2f1f2cosα\sqrt {f_{21}+f_{22}+2f_1f_2cosα}f21+f22+2f1f2cosα。
解题代码:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{
int f1,f2,a;
cin >> f1 >> f2 >> a;
cout << fixed << setprecision(10)
<< sqrt(f1*f1+f2*f2-2*f1*f2*cos(M_PI-a*M_PI/180.0))
<< endl;//M_PI是C++中所带的标准pi值
}