실수형태의 함수를 정수형태로 변환해주는 함수에 오류가 있는듯 해서 문의드립니다...
오늘 발견한것까지 벌써 두개째인데요 해결방안좀 부탁드립니다...
델파이를 믿고서 프로그램을 구성하고 있는데 어처구니 없는 실수가 있는듯 해서...
첫째.. round함수 오류..
결과값이 82.5233이라는 수치가 나올때 즉 소수이하 첫자리가 5가 나오면 반올림이 되어야 함에도 반올림이 되지 않습니다... 즉 round(82.5233)이라면 결과값은 83이 아닌 82가 나옵니다...
둘째.. trunc함수 오류..
변수값이 5.1인경우 해당 변수에 10을 곱해서 정수로 만들고자 하여 trunc(변수*10)을 했더만 51이 나오는게 아니고 50이라는 수치가 나오더라구요...
그래서 trunc대신에 round를 사용했드만 그때는 정상적으로 51이 나옵니다...
워찌하여 이런일이 있는쥐...
어떻게 해결방안이 없을까요??
delphi 6 공부중에 발생한 사항입니다요...^^;;
수치에 좀 민감한 부분이라 해결방법이 꼭 필요하다는...
고수님들의 도움을 부탁드립니다...
반올림할때 5의 경우 앞의 수가 짝수이면 버리고 홀수이면 올리는 방법을 사용합니다.
정확하게 사용하실려면 0.5를 더하시고 버림하시면 될거같습니다..
아마 trunc도 같은 맥락이아닐까하는..ㅡ,,ㅡ;;