반복문 (Repetitive) - 실습문제 1

DONI·2021년 8월 9일
0

Java

목록 보기
11/46
post-thumbnail

문제

이중 for문을 이용하여 아래 모양과 동일한 결과를 출력하시오.

  • 입력 받은 홀수 줄만큼 마름모 모양 별 찍기

입출력 예시

홀수 입력 : 5


소스코드

import java.util.*;
public class Main {
	public static void main(String[] args) {
		// 문제 3 마름모 모양 별 찍기
		Scanner sc = new Scanner(System.in);

		while (true) {
			System.out.print("홀수 입력 : ");
			int num = sc.nextInt();
			if (num % 2 == 0) {
				System.out.println("잘못 입력하셨습니다. 다시 입력해주세요.");
				continue;
			}
			sc.close();

			// num이 7이라면?
			// 상단부(피라미드) 0~2행
			for (int i = 0; i < num / 2; i++) {
				// 공백 출력(3,2,1)
				for (int j = num / 2; j > i; j--)
					System.out.print(" ");
				// 별 출력(1,3,5)
				for (int j = 0; j < i * 2 + 1; j++)
					System.out.print("*");
				// 개행
				System.out.println();
			}

			// 하단부(역피라미드) 3~6행
			for (int i = num / 2; i >= 0; i--) {
				// 공백 출력(0,1,2,3)
				for (int j = num / 2; j > i; j--)
					System.out.print(" ");
				// 별 출력(7,5,3,1)
				for (int j = 0; j < i * 2 + 1; j++)
					System.out.print("*");
				// 개행
				System.out.println();
			}
			break;
		}
	}
}
profile
틀린 내용이 있다면 댓글 또는 이메일로 알려주세요 ❤ꔛ❜

0개의 댓글