제가 수학적으로 오류가 있는 코드를 쓴건가요?
sample input도 잘 나오고
수학적으로 별 문제 없어 보이는 것 같습니다....
1. 큰 수를 만드는 것을 자제하세요.
지구를 반지름이 1인 구로 생각을 한 다음 계산을 한 뒤 거기에 R을 곱하는 등.. 큰 수와 큰 수의 연산이 자주 나오는 것을 방지해주세요.
2. 저 같은 경우는 PI를 소수점 8번째 자릿수까지 써서 틀리더라고요.. 12자리까지 써서 맞았습니다. 혹시 비슷한 오류??
3. 각도가 180도를 넘어가서 가끔 먼 길을 돌아가는 곡선길이가 나올 수도 있습니다.
1. 지적해 주신대로 직선 거리와 호의 길이를 전부 지구 반지름이 1인 구라고 생각하고 푼 뒤 나중에 R을 곱해주었습니다
2. 11자리 까지 써놨으나 호오오옥시 몰라서 12자리 써봤습니다
3. 제2코사인법칙 써서 호의 길이가 먼 길 돌아가는 걸로는 안 되도록 했습니다
결과 = WA
아몰랑
ㅋㅋㅋㅋㅋㅋㅋ 그럴수가 흠 그렇다면
4. 혹시 float 사용하셨다면 double로 바꿔주시고
(math.h 함수는 long double 지원 안하는게 많아요 그래서 double)
5. 역삼각함수 정확도가 의외로 되게 높습니다. 애용 굿
6. 좋은 예시로 0 0 90 0 이 있습니다(적도와 북극)
답은 1/4원주 - (루트2)R 이니 한번 직접 비교해보세요
7. 차이는 절대값입니다
8. 갓피출리아님을 불러주세연
9. 갓피출리아님도 해결 못하시면 던지세연
10. sqrt를 최대한 피하시고 삼각함수 쓰세요
물론 특정부분에서는 sqrt를 꼭 써야 하겠지만요
math.h에 있는 abs 함수는 믿을게 못됩니다.
abs 3글자를 지워보세요.
헉....
이럴수가
믿었던 abs 함수가 ㄷㄷ
감사합니다
math.h 함수의 실수 절대값은 fabs 함수에요 ㅋㅋㅋㅋ