컴퓨터에는 RAM이라는 물리적 저장장치가 있다. 램에 작동한 프로그램들이 저장되어 작동하게 된다. 하지만 램은 4기가, 8기가, 16기가 등으로 저장용량이 유한하기 때문에 부정확한 결과를 내기도 한다. 아래 코드를 살펴보자 두개의 float 값을 받아 나눗셈을 연산한 후 소수점 50번째 자리까지 반올리하는 결과를 출력하는 코드이다. x에다가 1, y에다가 10을 넣으면 1/10이기 때문에 0.100000....을 출력할 것으로 예상된다. 하지만 실제 결과값은? 뒤에 뭔가 이상한 숫자들이 나온다. float 변수에 저장가능한 비트 수가 유한하기 때문에 발생하는 결과이다. 비슷한 오류로 "오버플로우"라는 것이 있다. 위의 코드는 1초 간격으로 2를 계속해서 곱한 수를 출력하는 프로그램이다. 1 2 4 8 1..