오

도저히 이해가...ㅠ

201 %100 = 1 이 맞죠. 

 

그런데... 왜 (2.01*100) %100 = 0으로 나올까요? -_-;;;; 

|

댓글 6개

0.01 * 100 % 100 = 1
1.01 * 100 % 100 = 1
2.01 * 100 % 100 = 0
3.01 * 100 % 100 = 1
4.01 * 100 % 100 = 1
5.01 * 100 % 100 = 1
6.01 * 100 % 100 = 1
7.01 * 100 % 100 = 1
8.01 * 100 % 100 = 1
9.01 * 100 % 100 = 1
10.01 * 100 % 100 = 1
11.01 * 100 % 100 = 1
12.01 * 100 % 100 = 1
13.01 * 100 % 100 = 1
네 원래 소수점 계산은 그렇습니다......
제대로 나오지 않습니다.
제가 알기로는 내부적으로 이진 계산을 하기 때문일걸로 알고 있습니다.

http://php.net/manual/en/book.bc.php

여기에 있는 함수들로 계산해야 제대로 나옵니다.

bcmod(bcmul('2.01', '100'), '100');
답변 감사합니다.
여태 몰랐던거네요. -_-;;
자바스크립트도 동일한 문제가 있습니다.
콘솔로 찍어보니 그렇더라구요. 그래서 더 당황했었습니다. 2.01의 저주인가 싶었네요.
뭔지 잘 모르겠지만 이런 이유로 수학 전문 언어인 포트란 같은 게 있었나 봅니다.
댓글을 작성하시려면 로그인이 필요합니다.

자유게시판

203,261건
+
제목 글쓴이 날짜 조회
15-11-17 조회 1,286
15-11-17 조회 1,288
15-11-17 조회 1,302
15-11-17 조회 1,325
15-11-17 조회 1,316
15-11-17 조회 1,928
15-11-17 조회 1,290
15-11-17 조회 1,342
15-11-17 조회 1,473
15-11-17 조회 1,406
15-11-17 조회 1,387
15-11-17 조회 1,825
15-11-17 조회 1,833
15-11-17 조회 2,020
15-11-17 조회 1,047
15-11-17 조회 1,656
15-11-17 조회 1,593
15-11-17 조회 2,008
15-11-17 조회 1,441
15-11-17 조회 1,390