(초보질문)부동소수점수와 == !=
마루
2023.04.01
class EqualityExample2 {
public static void main(String args[]){
double num1 = 1.1+2.2;
double num2 = 3.3;
if (num1==num2);
System.out.println(같음);
if (num1!=num2);
System.out.println(다름);
}
}
이렇게 하면 왜 결과가 다름이 나오나요?
빨간글씨에서 1.1+2.2 연산결과가 다른 범위의 수로 바꿔서그렇다는데 어느범위의 수로 바꾸나요? double이 가장 큰 범위 아닌가요?ㅠㅠ
-
반혈
부동소수점 오류네요.
우리가 아는 3.3이 아니라 double형으로도 3.3000000000000003 이렇게 밖에 표현 못해요.