숫자를 입력받아 숫자만큼의 층의 피라미드를 쌓으시오
문제해결: 피라미드는 가운데로 정렬이 되어있고 이 정렬을 위해 앞에 공백을 넣어야한다. 이 공백은 -1씩 줄어든다.또한 피라미드의 별은 홀수만큼 늘어난다.
즉 한층씩 for문을 돌릴때 공백은 -1씩 줄여가며 출력하고 별은 홀수만큼 늘려가며 출력한다
Scanner sc = new Scanner(System.in);
System.out.print("숫자 입력 : ");
int num = sc.nextInt();
스캐너를 이용해 숫자를 입력받았다
그리고 이중for문을 이용해 구현하였다
for(int i=0; i<num; i++){
for(int j=num-1; j>i; j--){
System.out.print(" ");
}
for(int j=0; j<2*i+1; j++){
System.out.print("*");
}
System.out.println();
}
먼저 바깥 for문은 층수를 나타내기때문에 입력받은 num을 넣어주었다
그리고 안쪽 첫번째 for문은 공백을 나타내주기 때문에 입력받은 num에서 -1을 빼고 하나씩 i까지 줄여주었다 이렇게되면 i는 층수만큼 늘어나기때문에 하나씩 줄일 수 있다
그리고 안쪽 두번째 for문은 홀수만큼 별을 찍어야하므로 (2*i+1)을 이용해 홀수를 나타내주었다 이렇게 하면 i가 0부터 시작하기때문에 1, 3, 5, 7...올라갈 수 있다