题目描述
简单的数学问题,采用公式即可解决
注意:角度可能超过180
#define _USE_MATH_DEFINES
#include<iostream>
#include<cmath>
using namespace std;
const double r=6440;
int main(){
double dis,angle;
char s;
while(cin>>dis>>angle>>s>>s>>s){
if(s=='n'){
angle=angle/60;
}
double ang=M_PI*angle/180;
double arc=ang*(dis+r);
double dir=2*(dis+r)*sin(ang/2);
if(angle>180) arc=2*M_PI*(dis+r)-arc;
printf("%.6f %.6f\n",arc,dir);
}
return 0;
}