온라인저지
[BOJ] 2442번: 별찍기 - 5
plzfday
2018. 7. 26. 15:01
https://www.acmicpc.net/problem/2442
재귀
#include <cstdio>
int N;
void PrintBlank(int n)
{
if (n == 0)
return;
printf(" ");
PrintBlank(n - 1);
}
void PrintAsterisk(int n)
{
if (n == 0)
return;
printf("*");
PrintAsterisk(n - 1);
}
void Star(int n)
{
if (n == N + 1)
return;
PrintBlank(N - n);
PrintAsterisk(2 * n - 1);
puts("");
Star(n + 1);
}
int main()
{
scanf("%d", &N);
Star(1);
return 0;
}
반복문
#include <stdio.h>
int main(void)
{
int i, j, k;
int n;
scanf("%d", &n);
for (i = 1; i <= n; ++i)
{
for (j = n; j > i; --j)
printf(" ");
for (k = 0; k < 2 * i - 1; ++k)
printf("*");
printf("\n");
}
return 0;
}