Swift에 Float계의 나머지 연산 메소드가 2개 있는 이유

지난번 Swift의 Float계의 나머지 % 연산자가 폐지되어, 대신에 2개의 메소드를 사용하게 되었다는 기사를 썼습니다.
Float계의 연산으로 나머지 연산자(%)가 폐지, 거기에 바뀌는 메소드는 다루마 떨어뜨리고 가까운 역

그러나 정수는 계속 % 연산자가 있고, 두 가지 방법도 사용할 수 없기 때문에 그것이 왜인가 하는 의문을 썼는데, 이하의 메일(?)의 소개를 받았습니다(D씨, 감사합니다 ).
htps : // / sts. 슈 ft. rg/피페르마이l/수ㅏㅏㅔぉぅ치온/우ㅇㅎㅎㅎㅎ-20160411/014983. HTML

메일에 쓰여진 내용



예를 들어 10.0을 0.1로 나눈 나머지를 생각해 봅시다.

수식에서 나머지는 0이지만 이진수는 0.1을 정확하게 표현할 수 없기 때문에 0.1보다 약간 큰 값입니다.

그 어긋남이 축적되어 10.0의 곳도 어긋나 버립니다.

여기에서 보통으로 너무(10.0과 같거나 낮은 곳까지의 거리)를 구하면 아래 그림과 같은 9.9에 가까운 포인트와의 거리가 너무 되어 버립니다.

이 현상을 피하기 위해(피해를 경감하기 위해) 가장 가까운 역 방식의 방법이 있다고 합니다.

좋은 웹페이지 즐겨찾기