WA 질문입니다.

MinsuChae Reply 7 years 9 weeks ago
문제를 해결하긴 했으나, 이전에 WA가 났던 이유를 아직도 잘 모르겠습니다. System.out.println((long)(area*10)/10.0); System.out.println((long)(vol*10)/10.0); 위 코드에서 이미 10을 곱하고 정수형 변환 후, 10.0으로 나눔으로서 소수점 한자리만 반환하는 것으로 문제해결이 되지 않은 건가요? 1000 1000을 대입했을 때 첫줄의 경우는 소숫점이 한자리만 반환되는데 두번째줄 코드는 소숫점이 길게 나오네요. 이해가 잘 가지 않습니다.
onacloud Reply 7 years 9 weeks ago
println의 경우 숫자가 0이 여러개 붙으면 과학표기로 변경합니다. 예를 들어 0.00000000001 은 1.0E-10로 변경하는 거죠. 이렇게 변환되지 않게 하려면 printf를 사용해야 합니다
yoo0125 Reply 7 years 9 weeks ago
참고하려고 읽다가 궁금한 게 생겼는데 0이 여러 개 붙는 상황이 왜 나오는 건가요?? 이미 버림한 거 아닌가요..?? 저도 비슷하게 된 적이 있어서요