JAVA

[JAVA] for, while 문을 사용한 별(★)그리기

Potato Ongsim 2023. 7. 18. 11:17
반응형

for, while 문을 사용한 별 그리기

import java.util.Scanner;
public class T3 {

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		System.out.println("줄의 개수를 입력하세요.");
		
		int num = 0;
		while((num%2) == 0) { //홀수값이 나올때까지 입력
		
		num = sc.nextInt(); // num 출력
		}
		for(int i=1 ; i<=num ; i+=2) { // num값이 i보다 크거나 같을때 i값을 +=2 입력해서 num값이 i값보다 크거나 작을때까지 i=1에서 부터 num값까지 입력 // 윗쪽 별 
			for(int m=num-1 ; m>=i ; m-=2) { // i값이 m값보다 작거나 같을때 m=num-1의 m-=2 를 m값이 i값보다 크거나 같을때까지 m=num-1 에서 부터 입력
				System.out.print(" "); // 공백 입력
			}
			for(int j=1 ; j<=(i*2-1) ; j+=2) { // i*2-1의 값이 j보다 크거나 같을때 j값을 +=2 입력(홀수)해서 i*2-1값이 j보다 크거나 같을때 까지 j=1 에서부터 i*2-1 값까지 입력
				System.out.print("*"); //별 입력
			}
			
			System.out.println(); // 한사이클이 끝났을때(충첩 for문) 다음 라인으로 입력
	    }
		for(int i=num-1 ; i>=1 ; i-=2) { // i값이 1보다 크거나 같을때 i=nun-1 에서부터 i>=1 값까지 i-=2 값만큼 입력 // 아랫쪽 별
			for(int j=num ; j>=i+1 ; j-=2) { // j값이 i+1보다 크거나 같을때 j=num부터 j>=i+1 까지  j-=2 입력해서 출력
				System.out.print(" "); // 공백 입력
			}
			for(int m=1 ; m<=(i*2-1)-1 ; m+=2) { // (i*2-1)-1 값이 m보다 크거나 같을때 m=1의 값 부터 (i*2-1)-1까지 m+=2 입력해서 출력
				System.out.print("*"); // 별 입력
			}
			System.out.println(); // 한사이클이 끝났을때(충첩 for문) 다음 라인으로 입력
		
  }
 }
}
반응형