728x90
수학적으로 푸는 문제가 아니라 공식에 바로 적용하는 문제.
주의할 점은 소수점 자리를 맞추기위해서 아래 보기처럼 formatting을 사용해야한다.
System.out.printf("%.6f\n%.6f", R * R * Math.PI, (double)R * R * 2);
"%.6f"의 뜻은 floating point 중 소수점아래 6개만을 가져온다는 얘기이다.
이 때, (double)을 이용하여 형변환을 하지않으면 R * R * 2는 int인데 f로 불러옴으로 에러 메세지가 뜬다.
전체코드
import java.util.Scanner;
import java.lang.Math;
public class Main
{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int R = sc.nextInt();
System.out.printf("%.6f\n%.6f", R * R * Math.PI, (double)R * R * 2);
}
}
결과화면
728x90
'공부 > 코딩 연습하기' 카테고리의 다른 글
[Codility][C] NumberSolitaire (0) | 2021.01.01 |
---|---|
[백준][C] 11053번 가장 긴 증가하는 부분 수열 (동적 계획법) (0) | 2020.12.22 |
[Codility][C] BinaryGap (0) | 2020.12.22 |
[백준][C] 11727번 2×n 타일링 2 (동적 계획법) (0) | 2020.12.21 |
[백준][C] 11726번 2×n 타일링 (동적 계획법) (0) | 2020.12.21 |
댓글