atan
함수를 가지고 atan2
으로 만들면 어떻게 될까요? 예를C++ Atan에서 Atan2 만들기
float myAtan2(double a, double b)
{
float atan2val = //calculate atan2 using atan
return atan2val;
}
미안 해요하지 삼각법에서 최고! 이 같은
atan
함수를 가지고 atan2
으로 만들면 어떻게 될까요? 예를C++ Atan에서 Atan2 만들기
float myAtan2(double a, double b)
{
float atan2val = //calculate atan2 using atan
return atan2val;
}
미안 해요하지 삼각법에서 최고! 이 같은
뭔가 :
float myAtan2(double a, double b)
{
float atan2val;
if (b > 0) {
atan2val = atan(a/b);
}
else if ((b < 0) && (a >= 0) {
atan2val = atan(a/b) + pi;
}
else if ((b < 0) && (a < 0) {
atan2val = atan(a/b) - pi;
}
else if ((b = 0) && (a > 0)) {
atan2val = pi/2;
}
else if ((b = 0) && (a < 0)) {
atan2val = 0 - (p/2);
}
else if ((b = 0) && (a = 0)) {
atan2val = 1000; //represents undefined
}
return atan2val;
}
당신은 아마 더 예뻐 코딩 할 수 있지만, 내가 여기에서 얻은 논리입니다 : https://en.wikipedia.org/wiki/Atan2#Definition_and_computation합니다.
"undefined"를 나타 내기 위해 1000 (arctan에는 불가능한 값)이 반환됩니다. 아마 NaN이나 뭔가를 사용하여 다른 방법으로 할 수 있습니다.
합리적인 답변이지만 너무 잘랐습니다. 사소한 문제에 조금주의를 기울여야합니다. Cargo Cult Programming에서 졸업 한 사람과 일하는 것을 원하지 않습니다. – user4581301
@ user4581301 저는 14 권입니다. 수업이나 "졸업 한 졸업식"이나 무엇이든간에 걱정하지 마십시오. 이것은 재미있는 일을하고있는 작은 프로그램을위한 것입니다. – coddding
합리적인 관심사 user45 ... –
https://en.wikipedia.org/wiki/Atan2#Definition_and_computation – user4581301
하하, 나는 그것을 게시하려고했습니다, user4581301. atan 함수가 이미있는 경우이 솔루션은 간단합니다. –
@RobertM. 그래서 내가 왜이 질문을 게시, 나는 쉽게 atan을 사용하여 수행 할 수 있지만 삼각법에 좋지 않다는 것을 알고있다. – coddding