My/Job (개인작업물)

ECMA (Javascript) ... PC 가 바본가... 내가 바본가 -_-;

알찬돌삐 2007. 8. 6. 20:05

컴퓨터 태생의 한계인지.....

소수점 연산에 이리 약할수가 --;;;;;;;

아놔. 사람 돌겠네 진짜...................



[Flash] http://www.i-swear.com/attachment/cfile6.uf@26575434586FAE10224C50.swf



그냥 실수형 연산. 말 그대로 더하기.....





[Flash] http://www.i-swear.com/attachment/cfile26.uf@2431B139586FAE0F1811CE.swf



소수점 아래 몇째짜리까지 있는가 계산후 해당 자리수 * 원래 값





[Flash] http://www.i-swear.com/attachment/cfile27.uf@2552853B586FAE10226386.swf



소수점 아래 몇째짜리까지 있는가 계산후 해당 자리수 * 원래 값
기존 데이터와 실제 더해지는 데이터와의 자리수 차이까지 감안해서 곱하기 해주었음에도
불구하고 이런 -_-;;;




아니야 ㅠㅠ.
내가 생각해도 내가 잘못짠지 알았는데.
집에까지 와서 재차 검토 검토 검토 해본 결과....
잘못짠게 아니라는걸 알았다.

님히 자바스크립트 , 산수도 못하나;;;;;
--;

회사에서 정 안되어서 정수형과 소수점이하끼리 묶어서 계산하고 , 다시 그걸 스트링으로 합쳐서 뿌려주는걸로
하다가 말고 집에 왔는데...... 혹시나 싶어서 다시 재차 확인했는데 내가 잘못한게 아니라는걸 알았다 --;;;

님들도 심심하면 테스트 -_-;
1.
<script>
alert(0.3 + 0.6);
alert(((0.3 * 10) + (0.6 * 10)) / 10);
</script>

0.9 가 나올거 같지요 -_-?






알럿창이 두개 뜨고 처음엔 0.89999999999
두번째는 0.9 가 나오죠? --;;;;
10을 더해서 곱해서 10을 빼면 곱하지 않은거나 같아야 되는데 왜 두개의 결과값이 다르냐고요 -_-;

2.
<script>
alert(8.21 + 0.23);
alert(((8.21 * 10) + (0.23 * 10)) / 10);
alert(((8.21 * 100) + (0.23 * 100)) / 100);
alert(((8.21 * 1000) + (0.23 * 1000)) / 1000);
</script>

8.44 가 나올거 같지열? -_-;







왜 마지막 알럿창만 제대로 8.44 가 나올까열 -_-?

이게 도대체 뭘까열....

나 이거 붙잡고 세시간째인데 ㅡㅡ;;;;;;;;;; 으아아아아


PS. 날코님이
(Math.round(8.21 * 100) + Math.round(0.23 * 100)) / 100;
해보라고 해서 해봤는데.......
잘 나오네요 -_-;
821 반올림 해봐야 821
23 반올림 해봐야 23 인데
도대체 뭐가 틀리다구 ㅠㅠ

담배를 안 피울수가 없다 정말 ;;;;;;;;;;;;.