특이한 부동 소수점 정밀도로 π를 저장하지 않습니다. 배정 밀도로 π에 대해 잘못된 값을 사용하고 있습니다. 이진수로 3.1415926536 을 근사 하려면 최소 38 비트가 필요합니다.
3.14159265359922… > 11.001001000011111101101010100010001001
2 ^ -36은 약 1.5e-11이며, 후행 99와 일치합니다. 배정 밀도 부동 소수점 은 52 비트 유효합니다. cos(pi/2)
-5e-12로 평가할 수있는 유일한 다른 선택은 48 비트 유형이며 매우 이상합니다.
미분 값이 거의 0 인 0과 π 근처에서 cos (θ)를 매우 정확하게 계산할 수 없습니다.
cos(3.1415926536) ≈ -0.999999999999999999999947911
-1 의해 5.2e-23에 대한 ε보다 작은 약 다르다고 double
때문에 cos(3.1415926536)
같이 계산된다 정확하게 -1 ... 이는 부정확하다.
± π / 2 근처에서 미분 [ -sin (θ) ]은 거의 ± 1이므로 입력의 오차가 출력이됩니다.
cos(1.57079632679961) ≈ -4.71338076867830836e-12
cos(1.57079632679962) ≈ -4.72338076867830836e-12
cos(1.57079632680000) ≈ -5.10338076867830836e-12
하나의 작은 숫자를 표시 cos(π/2)
하고 -5.2e-12로 계산하는 TI 계산기가 있습니다. 그러나 전자적으로는 매우 다르며에 대한 정확한 가치를 제공하도록 설계되었습니다 cos(90°)
.
Spotlight에서 cos(pi/2)
π 값을 검색하고 10 진수 문자열로 변환 하여 (정확하고 합리적인) 이진 값으로 저장합니다 .1100100100001111110110101010001000100100001101101111 (또는 10000), 2로 나눈 다음 본질적으로 빼기 π / 2 의 실제 값 cos(pi/2 + cos(pi/2))
0에 더 가까운 지 확인해야 합니다 (-2.2e-35 일 수 있음).
2의 거듭 제곱으로 곱하면 유의 한 값이 아닌 지수에만 영향을 미칩니다. 반반 씩 반올림하거나 반올림하여 반올림을 적용하는 방법을 결정할 수 있습니다.