본문 바로가기
개발/Java

[선택 과정] Java 기초 - 자료형(data type) : 실수는 어떻게 표현하나요?

by 컴쏘 2023. 6. 24.
728x90

부동 소수점 방식

  • 실수는 정수 보다 정밀하기 때문에 정수와는 다른 방식으로 표현해야 함
  • 부동 소수점 방식으로 실수 값 0,1 표현
  • 지수부와 가수부로 표현 함
  • 컴퓨터에서는 밑수를 2로 사용
  • 정규화 : 가수가 밑수보다 작은 한 자리까지 가수로 표현되는 것
  • 컴퓨터에서는 밑수가 2이므로 정규화를 하게 되면 가수부분의 첫 번째 자리 숫자는 항상 1임 ex. 0.2 표현 0.4 x 2^-1 → 정규화 → 1.6 x 2^-3

float 형과 double 형

자바에서는 실수의 기본 타입은 double을 사용함

float와 double 예제

package ch07;

public class DoubleTest {
	public static void main(String[] args) {
		double dnum = 3.14;
		float fnum = 3.14F; // float는 반드시 뒤에 F를 붙여야 한다. 
		
		System.out.println(dnum);
		System.out.println(fnum); 
	}
}

부동 소수점 방식의 오류

지수와 가수로 나타내는 부동 소수점 방식에서는 지수부가 0을 표현할 수 없기 때문에 약간의 오차가 발생할 수 있다.

package ch07;

public class DoubleTest2 {
	public static void main(String[] args) {
		double dnum = 1;
		
		for(int i = 0; i < 10000; i++) {
			dnum = dnum + 0.1;
		}
		System.out.println(dnum); // 1001.000000000159가 나온다.
	}
}

2023 KAKAO Tech Campus_BackEnd 선택 과정
Java 기초 강의 정리 내용입니다.
728x90