“13015번 별 찍기 - 23” 문제

image

“13015번 별 찍기 - 23” 정답 코드

#include <stdio.h>
int main() {
	int n,i;
	scanf("%d", &n);
	
	for(i=0; i<n-1; i++) {
		if(i==0) {
			for(int j=0; j<n; j++) {
				printf("*");
			}
			for(int j=0; j<1+(n-2)*2; j++) {
				printf(" ");
			}
			for(int j=0; j<n; j++) {
				printf("*");
			}
		}
		else {
			for(int j=0; j<i; j++) {
				printf(" ");
			}
			printf("*");
			for(int j=0; j<n-2; j++) {
				printf(" ");
			}
			printf("*");
			
			for(int j=(n-2-i)*2; j>=0; j--) {
				printf(" ");
			}
			
			printf("*");
			for(int j=0; j<n-2; j++) {
				printf(" ");
			}
			printf("*");
		}
		printf("\n");	
	}
	
	for(int j=0; j<i; j++) {
		printf(" ");
	}
	printf("*");
	for(int j=0; j<n-2; j++) {
		printf(" ");
	}
	printf("*");
	for(int j=0; j<n-2; j++) {
		printf(" ");
	}
	printf("*\n");
	
	for(i=n-2; i>=0; i--) {
		if(i==0) {
			for(int j=0; j<n; j++) {
				printf("*");
			}
			for(int j=0; j<1+(n-2)*2; j++) {
				printf(" ");
			}
			for(int j=0; j<n; j++) {
				printf("*");
			}
		}
		else {
			for(int j=0; j<i; j++) {
				printf(" ");
			}
			printf("*");
			for(int j=0; j<n-2; j++) {
				printf(" ");
			}
			printf("*");
			
			for(int j=(n-2-i)*2; j>=0; j--) {
				printf(" ");
			}
			
			printf("*");
			for(int j=0; j<n-2; j++) {
				printf(" ");
			}
			printf("*");
		}
		printf("\n");	
	}
}

기타 메모

별찍기(이중 포문 복습) 문제집 위 문제집에서는 마지막 문제입니다! 클리어~

딱히 수학적으로 머리쓰는 문제들이라기 보다는 그냥 반복문을 잘 이해하고 활용할 수 있는가?에 대한 문제 들이라서 아부지 Sony 헤드폰 빌려다가 노래틀고 리듬타면서 풀었는데 잘 풀려서 기분이 좋네오~

백준 풀이 올리면 조회수가 좀 올라가고 그러면 광고도 많이 노출되니깐^^ 귀찮지만 글을 쭉 올려봤습니다. 꽤 많이 번거롭기는 하네요 ㅠ 스크린샷찍고, 코드 복붙하고, 제목 바꾸고,,,, 이것도 걍 메크로 만들어서 글올리게 시키는게 나을 듯.

하여튼 덕분에 백준 잔디가 오늘 하루만 초록초록해졌습니다~ image

위 문제집 자체가 난이도가 높진 않아서 반복문 학교에서 연습하는 친구들이 시간내서 풀어봐도 좋을듯. 별은 아주 그냥 지구 상에 있는 모든 방법으로 찍어본 것 같습니다.

끝~~