pichulia   2년 전



https://www.acmicpc.net/coding/view/2915 이게 문제의 코드. 320번째 줄을 보면

 printf("yy-xx = %lf abs(yy-xx) = %lf res=%lf\n",temp,abs(temp),res);

이런 녀석이 있습니다.
temp 값이 뭐가 됐든 temp가 양수라면 temp와 똑같은 값이 abs(temp)에서 출력이 되어야합니다.


그런데 !

https://www.acmicpc.net/coding/status/view/7447 여기서 Ctrl+F로 "abs" 찾아서 가보세요.
죄다 0을 리턴하는 모습을 볼 수 있습니다...

abs함수를 직접 만들어서 abss로 이름을 바꾸고 채점하니
틀리던 문제가 맞았습니다... 문제가 되는 부분은 abs함수 뿐이였는데...

---------------------------------

혹시 다른 님들도, "어? 분명 맞은거 같은데 왜 틀렸다고 뜨지??" 하는 기분이 들면
abs 함수를 사용했는지 체크해보세요.

기적이 일어날 수도.....?



lll4592   2년 전

stdlib.h의 abs함수가 정수형으로 리턴해서 그런게 아닐까요???

https://www.acmicpc.net/coding/status/view/7449

pichulia   2년 전

!!
그런 놀라운 이유가....

VS2010에서는 fabs가 아니라 abs 해도 잘 나와서...

앞으로 코딩할 때 참고해야겠네요 ㅠㅠㅠㅠ

댓글을 작성하려면 로그인해야 합니다.