#2446

문제 설명
예제처럼 별을 찍는 문제이다.

풀이 과정
이전에 했던 별찍기 (아래쪽 삼각형, 위쪽 삼각형)를 합쳐주면 된다.
다만 두번째 반복문에서 아래와 같이 약간의 숫자 조정이 필요하다.
#include <stdio.h>
int main() {
int N;
scanf("%d",&N);
for(int i = 0; i<N; i++){
for(int j = 0; j<i; j++){
printf(" ");
}
for(int k = i; k<N; k++){
printf("*");
}
for(int k = i; k<N-1; k++){
printf("*");
}
printf("\n");
}
for(int i = 2; i<=N; i++){
for(int j = N; j>i; j--){
printf(" ");
}
for(int k = 0; k<i; k++){
printf("*");
}
for(int k = 0; k<i-1; k++){
printf("*");
}
printf("\n");
}
return 0;
}
#2522

문제 설명
예제처럼 별을 찍는 문제이다.

풀이 과정
이전에 했던 별찍기 (양옆 삼각형)을 수정해주면 된다.
띄어쓰기와 별 숫자에 유의하여 아래와 같이 작성한다.
#include <stdio.h>
int main() {
int N;
scanf("%d",&N);
for(int i = 1; i<N; i++){
for(int k = i; k<N; k++){
printf(" ");
}
for(int k = 0; k<i; k++){
printf("*");
}
printf("\n");
}
for(int i = 0; i<N; i++){
for(int k = 0; k<i; k++){
printf(" ");
}
for(int k = i; k<N; k++){
printf("*");
}
printf("\n");
}
return 0;
}
#2523

문제 설명
예제처럼 별을 찍는 문제이다.
풀이 과정
위의 풀이과정에서 살짝의 변형을 주면 된다. 다만 주의해야할 점은 공백문자도 출력하게 되면 출력형식에 오류가 발생하므로 공백을 출력하지 않아야한다.
#include <stdio.h>
int main() {
int N;
scanf("%d",&N);
for(int i = 1; i<N; i++){
for(int j = 0; j<i; j++){
printf("*");
}
printf("\n");
}
for(int i = 0; i<N; i++){
for(int j = N; j>i; j--){
printf("*");
}
printf("\n");
}
return 0;
}
댓글