cmath中三角函数的输入是弧度,不是角度.忘了这件事,找bug找了好久!
弧度是旧称弪。在数学和物理中,弧度是角的度量单位。它是由国际单位制导出的单位,单位缩写是rad。弧度是指在一个圆中,弧长和半径之比,即|弧度|=弧长÷半径。
角度是一个数学概念。用于描述角的大小,即两条相交直线中的任何一条与另一条相叠合时必须转动的量。度是用以度量角的大小的单位,符号为°。
弧度角度换算公式及函数:
弧度角度互换的函数:
#include<cmath>
#include<iostream>
using namespace std;
double Angle2Rad(double angle){
//return angle*3.14159/180;
return angle*0.017453293;
}
double Rad2Angle(double Rad){
//return Rad*180/3.14159;
return Rad*57.29578;
}
int main(){
vector<double> angles = {45,60,150,180,250,270,360,720,-45,-90,-360,0};
vector<double> rads = {0.785397,1.0472,2.61799,3.14159,4.36332,4.71238,6.28318,-0.785397,-1.57079,-6.28318,0};
cout<<"以下是角度转弧度:"<<endl;
for(auto angle:angles){
cout<<angle<<"->"<<Angle2Rad(angle)<<endl;
}
cout<<"以下是弧度转角度"<<endl;
for(auto rad:rads){
cout<<rad<<"->"<<Rad2Angle(rad)<<endl;
}
return 0;
}
结果:
各种三角函数
C++ 算法基础(1)——cmath常用函数_cmath 中关于除法的函数-CSDN博客