๊ฒฐ์ ๋ก ์ ๊ฒ์์ ๋ง๋ค ๋์๋ ์ ๋์์ซ์ (float/double)๋ฅผ ์ฐ๋ฉด ๋ถ์์ฉ์ด ์ฌ ์ ์๋ค.
๊ฒฐ์ ๋ก ์ ์ด์ง ์์ผ๋ฉด, ์๋ฒฝํ ๊ฐ์ ํ๋์ ํด๋ ๋ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ ๋์ฌ ์ ์๋ค.
๋ณดํต์ ์๊ด ์๋๋ฐ, ๋ฌธ์ ๊ฐ ๋ ์ ๊ฐ ์์.
์ด๋ ๊ฒ ๋๋ ์ด์ ๋ float์ cpu๋ง๋ค, os๋ง๋ค ์ฒ๋ฆฌ๋ฐฉ๋ฒ์ด ๋ค๋ฅผ ์ ์์
์๋ฅผ๋ค์ด, ์์ดํฐ์์๋ (1.0fย / 3) * 3 ์ ํ๋ฉด 1.0์ด ๋ฑย ๋์ค๋๋ฐ
์ปดํจํฐ์์๋ 0.9993, ์๋์์๋ 0.99997์ด ๋์จ๋ค๊ฑฐ๋ ํ ์ ์์.
๊ทน๋จ์ ์ผ๋ก๋, ๋๋ฒ๊ทธ ๋น๋์ ์ผ๋ฐ ๋น๋๋ ์ฐจ์ด๊ฐ ์์ ์ ์๋ค.
์ค์ ๋ก ์ด๊ฒ๋ณด๋จ ์ค์ฐจ ์ ๊ณ , 4~5์๋ฆฌ๊น์ง๋ ๋๊ฐ ๋ง์ง๋ง, ์ ์์ ๋ฏผ๊ฐํ๊ฑฐ๋ ํ ๊ฒ์์์๋ ๋ฌธ์ ๊ฐ ๋ ์ ์์.
์ด ๋ฌธ์ ๋๋ฌธ์ ๊ณ ์ ์์์ ํ๋ฌ๊ทธ์ธย ๋ง๋ ์ ์์ด์ ๊ทธ๋ฅย ์๋ ์ฒ ํด๋ณด๋ ค๊ณ ์.
๋ญ์ง ๋ชจ๋ฅด๊ฒ ์ง๋ง, float์ด ์ค์ํ ๊ฒ์๋ง๋ค๋ ์ ํ๋ฌ๊ทธ์ธ์ผ๋ก ๋์ฒดํ๋ฉด๋๋ค๋๊ฑฐ์ง?
์ง์ง ์กด๋ ๋ฑ๋ฑ๋ง์๋จ์ด์ ธ์ผํ ๋๋ง ใ ใ ์๋๋ฉด ์๊ด์์
์ ์ํ์ ์ฐ๋๊ฒ ์ํธํจ
์ด๊ฒ ๋ง๊ธดํจ. 1์ด 0.001์ด๋ค ์ด๋ฐ์์ผ๋ก. ์ ํ๋ฌ๊ทธ์ธ๋ ๊ฒฐ๊ตญ 1์ด 2^-32๋ผ๊ณ ํด๋๊ณ ์ฐ์ฐ๊ตฌํํด๋์๊ฑฐ๋ผ.
ํฅ๋ฏธ๋กญ๋ค
๊ทธ๋ฐ ํ๋ฌ๊ทธ์ธ์ ๊ธฐ์กด float ์ฐ์ฐ ๋๋น ์ด๋ก ์ ์๋ ์ฐจ์ด๊ฐ ์ผ๋ง๋จ?
๋ง์ ์ ๋น ๋ฅด๊ณ ๊ณฑ์ ์ ๋๋ฆผ