IT 개발노트

while문 예제 (별찍기) 본문

알고리즘/JAVA

while문 예제 (별찍기)

limsungju 2019. 2. 9. 23:21

문제 : 홀수의 줄을 입력했을 때 *을 마름모 모양으로 찍기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package sungju.Java.Test2;
 
import java.util.Scanner;
 
public class Test2 {
    public static void main(String[] args) {
        System.out.println("홀수를 입력해주세요");
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        for (int i=0;i<num;i++){
          for (int j=0; j<num;j++)
          {
             if (i<=num/2)// 위쪽 영역
             {
                if (i+j<=num/2-1)// 왼쪽 위 공백찍기
                   System.out.print(" ");
                else if (j-i>=num/2+1// 오른쪽 위 공백찍기
                    System.out.print(" ");
                else
                   System.out.print("*");// *찍기
             }
             else if (i>num/2//아래쪽 영역
             {
                if (i-j>=num/2+1//왼쪽 밑 공백
                    System.out.print(" ");
                else if (i+j>=num/2*3+1)//오른쪽 밑 공백
                    System.out.print(" ");
                else
                    System.out.print("*"); // *찍기
             }
          }
          System.out.println();//줄바꿈
        }
    }
}