이중 for문은 불가피하다. 바깥쪽 for문의 index i가 1씩 증가할때마다
별이 한줄에 몇개씩 찍히는가를 먼저 생각해보기
5.모양, 6.모양 같은 경우에는 오른쪽 공백 계산 하지 않아도 됨.
별이 한줄에 몇개씩 찍히는가 생각해보고 추가로 왼쪽에 공백이 얼마나 들어가는가 계산해주면 끝.
7.모양 같은 경우에는 1.모양 과 2.모양을 합친것.
1.모양
* ** *** **** *****
1.코드
//첫번째 방법 for(int i = 0; i < 5; i++){ for(int j = 0; j <= i; j++){ System.out.printf("*"); } System.out.println(); } //두번째 방법 for(int i = 5; i > 0; i--){ for(int j = i; j <= 5; j++){ System.out.printf("*"); } System.out.println(); }
2.모양
***** **** *** ** *
2.코드
for(int i = 0; i < 5; i++){ for(int j = i; j < 5; j++){ System.out.printf("*"); } System.out.println(); }
3.모양
***** **** *** ** *
3.코드
//첫번째 방법 for(int i = 0; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = i; j < 5; j++) { System.out.printf("*"); } System.out.println(); } //두번째 방법 for(int i = 0; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = 0; j < (5-i); j++) { System.out.printf("*"); } System.out.println(); }
4.모양
* ** *** **** *****
4.입력
for(int i = 0; i < 5; i++) { for(int j = 0; j < (5-i-1); j++) { System.out.printf(" "); } for(int j = 0; j <= i; j++) { System.out.printf("*"); } System.out.println(); }
5.모양
* *** ***** ******* *********
5.입력
//첫번째 방법 for(int i = 0; i < 5; i++) { for(int j = 0; j < 5-i-1; j++) { System.out.printf(" "); } for(int j = 0; j < (2*i + 1); j++) { System.out.printf("*"); } System.out.println(); } //두번째 방법 for(int i = 0; i < 5; i++) { for(int j = i+1; j < 5; j++) { System.out.printf(" "); } for(int j = 0; j < (2*i + 1); j++) { System.out.printf("*"); } System.out.println(); }
6.모양
********* ******* ***** *** *
6.입력
//첫번째 방법 for(int i = 0; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = (i*2); j < 2*(5-1)+1; j++){ System.out.printf("*"); } System.out.println(); } //두번째 방법 for(int i = 0; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = 0; j < (2*(5-i)-1); j++){ System.out.printf("*"); } System.out.println(); }
7.모양
* ** *** **** ***** **** *** ** *
7.입력
/* 중간에 별 다섯개 짜리기점으로 1. 모양을 먼저 만들고 2.그 다음 index를 1로 설정해서 2.모양을 만들면 된다. */ for(int i = 0; i < 5; i++) { for(int j = 0; j <= i; j++) { System.out.printf("*"); } System.out.println(); } for(int i = 1; i < 5; i++) { for(int j = 0; j < 5-i; j++) { System.out.printf("*"); } System.out.println(); }
8.모양
* ** *** **** ***** **** *** ** *
8.입력
for(int i = 0; i < 5; i++) { for(int j = 0; j < 5-i-1; j++) { System.out.printf(" "); } for(int j = 0; j <= i; j++) { System.out.printf("*"); } System.out.println(); } for(int i = 1; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = 0; j < 5-i; j++) { System.out.printf("*"); } System.out.println(); }
9.모양
* *** ***** ******* ********* ******* ***** *** *
9.입력
for(int i = 0; i < 5; i++) { for(int j = 0; j < 5-i-1; j++) { System.out.printf(" "); } for(int j = 0; j < 2*i+1; j++) { System.out.printf("*"); } System.out.println(); } for(int i = 1; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.print(" "); } for(int j = 0; j < 2*(5-1)+1-(2*i); j++) { System.out.printf("*"); } System.out.println(); }
10.모양
* * ** ** *** *** **** **** ********** **** **** *** *** ** ** * *
10.입력
for(int i = 0; i < 5; i++) { for(int j = 0; j <= i; j++) { System.out.printf("*"); } for(int j = 0; j < 5*2 - 2*(i+1); j++) { System.out.printf(" "); } for(int j = 0; j <= i; j++) { System.out.printf("*"); } System.out.println(); } for(int i = 1; i < 5; i++) { for(int j = 0; j < (5-i); j++) { System.out.printf("*"); } for(int j = 0; j < 2*i; j++ ) { System.out.printf(" "); } for(int j = 0; j < (5-i); j++) { System.out.printf("*"); } System.out.println(); }
11.모양
********* ******* ***** *** * *** ***** ******* *********
10.입력
for(int i = 0; i < 5; i++) { for(int j = 0; j < i; j++) { System.out.printf(" "); } for(int j = 0; j < 2*(5-1)+1 - 2*i; j++ ) { System.out.printf("*"); } System.out.println(); } for(int i = 1; i < 5; i++) { for(int j = 0; j < 5-i-1; j++) { System.out.printf(" "); } for(int j = 0; j < (2*i+1); j++) { System.out.printf("*"); } System.out.println(); }