# printf 관련 질문
## Q1. 아래 두 코드의 차이가 궁금합니다.
```
// A
System.out.printf("%s x %2d = %10d\n", "돈가스", donNum, donSum);
// B
System.out.printf("원기둥의 부피: %.2f/n", Math.PI*r*r*h);
```
B의 경우 아래와 같이 사용해도 되는걸까요?
```
// B -> B'
System.out.printf("%s %.2f\n", "원기둥의 부피: ", Math.PI*r*r*h);
```
왜 각각 순서가 다르게 배열되었는지, 그런 이유가 따로 있는지 궁금합니다.
## Q2. Math.PI의 사용
Math.PI는 어떨때 쓰는지 간단히 언급해 주시면 감사하겠습니다.
## P.S.
늦은 나이에 해외 대학에서 자바를 공부하고 있습니다. 오늘 이처럼 좋은 온라인 강의를 발견하게 되어 몇 문제 풀고 있습니다.
학교에서 이해되지 않은 것들이 몇가지 이해가 되어 앞으로 자주애용하여 실력을 키우고 싶습니다.
미리 답변 감사드립니다. 좋은 하루 보내세요.
sehongpark님의 답변
## A1. 두 코드의 차이
두 코드의 차이는 없습니다. 다양한 방식으로 출력 가능합니다. 따라서 취향에 따라 사용하면 되겠습니다~
```
// B
System.out.printf("원기둥의 부피: %.2f/n", Math.PI*r*r*h);
// B'
System.out.printf("%s %.2f\n", "원기둥의 부피: ", Math.PI*r*r*h);
```
## A2. Math.PI의 사용
원주율 값이 필요할 때, 가져다가 쓰면 되겠습니다! 이를 통해 값을 잘못 넣는 등의 실수를 방지할 수 있습니다.
수학에서 파이(𝛑)는 원주율의 의미합니다. 이 값은 3.14159265... 와 같은 상수입니다. 원의 넓이/구의 부피 등등.. 원과 관련된 수학적 연산시 매번 나온다고 보시면 됩니다.
너무 많이 또 자주 사용되기에 직접 변수로 사용하기보다는, 일반적으로 가져다가 사용하게 됩니다.
```
// 직접 만들어 쓰는 예
double pi = 3.14159265;
double circleArea = pi * r * r;
// 손쉽게 가져다가 쓰는 예
circleArea = Math.PI * r * r;
```