문제

홀수 정사각형의 크기를 입력 받은 후, 가로 세로 대각선의 합이 일정한 마방진을 출력하는 프로그램을 작성하시오.

 

마방진이란 1부터 N*N까지의 숫자를 한 번씩만 써서 정사각형에 배치하여 가로와 세로, 그리고 대각선의 합이 같도록 하는 것이다.

 

다음의 순서에 따라 각 위치에 차례대로 값을 넣는다.
1. 첫 번째 숫자인 1을 넣는 위치는 첫 번째 행 가운데이다.
2. 숫자가 N의 배수이면 바로 아래의 행으로 이동하여 다음의 수를 넣고
3. 그렇지 않으면 왼쪽 위로 이동하여 다음의 숫자를 넣는다. 

   만약 행이 첫 번째를 벗어나면 마지막 행으로 이동하고, 열이 첫 번째를 벗어나면 마지막 열로 이동한다.

 

 


 

 

1. 첫 번째 행 가운데(1,2)에 1을 넣는다.
2. 왼쪽 위로 이동하면 (0,1)인데 행의 위치가 처음을 벗어났으므로 마지막행(3,1)의 위치로 이동하여 2를 넣는다.
3. 왼쪽 위로 이동하면 (2,0)인데 열의 위치가 처음을 벗어났으므로 마지막열(2,3)의 위치로 이동하여 3을 넣는다.
4. 배열에 넣은 값(3)이 N의 배수이므로 바로 아래행으로(3,3) 이동하여 4를 넣는다.
5. 왼쪽 위로 이동하여 (2,2) 5를 넣는다.
6. 왼쪽 위로 이동하여 (1,1) 6를 넣는다.
7. 배열에 넣은 값(6)이 N의 배수이므로 바로 아래행으로(2,1) 이동하여 7을 넣는다.
8. 왼쪽 위로 이동하면 (1,0)인데 열의 위치가 처음을 벗어났으므로 마지막열(1,3)의 위치로 이동하여 8을 넣는다.
9. 왼쪽 위로 이동하면 (0,2)인데 행의 위치가 처음을 벗어났으므로 마지막행(3,2)의 위치로 이동하여 9를 넣는다.

 

입력형식

정사각형의 크기 n(2부터 100사이의 홀수)을 입력받는다.

 

출력형식

위에서 언급한 형태로 정사각형의 내부 숫자를 차례로 채운 후의 모습을 출력한다. 숫자 사이는 공백으로 구분한다.

 

 

<코드>

#include <stdio.h>

int main()
{
	int n;
	int arr[100][100] = {0,};
	int x,y;
	
	scanf("%d", &n);
	
	if(n<2&&n>100&&!n%2)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	x = n/2;
	y = 0;
	
	arr[y][x] = 1;
	
	for(int i=2; i<=n*n; i++)
	{
		if(!((i-1)%n))
		{
			y++;
			arr[y][x] = i;
		}
		else
		{
			y--;
			x--;
			if(y<0)
				y = n-1;
			if(x<0)
				x = n-1;
			
			arr[y][x] = i;
				
		}
	}
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<n; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1430 : 숫자의 개수  (0) 2020.05.25
1692 : 곱셈  (0) 2020.05.19
1495 : 대각선 지그재그  (0) 2020.05.12
1331 : 문자마름모  (0) 2020.05.12
1707 : 달팽이사각형  (0) 2020.05.12

문제

정사각형의 크기를 입력 받은 후 대각선으로 지그재그 형태인 다음과 같은 형태로 출력하는 프로그램을 작성하시오.

 

< 처리조건>
(1) 가장 왼쪽 위의 좌표부터 차례로 숫자를 대입시킨다.
(2) 대각선을 기준으로 계속 지그재그 모양으로 채워져야 하며 숫자는 1씩 증가하는 형태로 채워나가야 한다.

 

 

 

 

 

입력형식

정사각형의 크기 n(1부터 100사이의 정수)을 입력받는다.

 

출력형식

위에서 언급한 형태의 지그재그 모양의 정사각형의 내부 숫자를 차례로 채운 후의 모습을 출력한다. 숫자 사이는 공백으로 구분한다.

 

 

<코드>

#include <stdio.h>

enum{
	RIGHTUP,
	LEFTDOWN
};

int main()
{
	int arr[100][100] = {0, };
	int n, x, y;
	int num=1, direction = LEFTDOWN;
	
	scanf("%d", &n);
	
	if(n<1||n>100)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	x=1; y=1;
	
	while(1)
	{
		switch(direction)
		{
			case LEFTDOWN:
				arr[y][x] = num++;
				x--; y++;
				if(y>n)
				{
					x+=2;
					y--;
					direction = RIGHTUP;
					break;
				}
				if(x<1)
				{
					x++;
					direction = RIGHTUP;
				}
				break;
			
			case RIGHTUP:
				arr[y][x] = num++;
				x++; y--;
				if(x>n)
				{
					x--;
					y+=2;
					direction = LEFTDOWN;
					break;
				}
				if(y<1)
				{
					y++;
					direction = LEFTDOWN;
				}
				break;
		}
		if(x>n&&y>n)
			break;
	}
	
	for(int i=1; i<=n; i++)
	{
		for(int j=1; j<=n; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1692 : 곱셈  (0) 2020.05.19
2074 : 홀수 마방진  (0) 2020.05.19
1331 : 문자마름모  (0) 2020.05.12
1707 : 달팽이사각형  (0) 2020.05.12
2071 : 파스칼 삼각형  (0) 2020.05.07

문제

마름모의 한 변의 길이 N을 입력받아 아래와 같이 문자마름모를 출력하는 프로그램을 작성하시오.

 

< 처리조건 >
(1) 첫 번째 행의 중앙부터 출발하여 시계 반대방향으로 'A'부터 차례대로 채워나간다. ('Z'다음에는 다시 'A'가 된다.)
(2) 바깥 부분이 다 채워지면 두 번째 행 중앙부터 다시 같은 작업을 반복한다.
(3) 같은 방법으로 마름모를 다 채워지도록 하여 출력한다.

 


 

 



 

입력형식

마름모의 한변의 길이 N(N의 범위는 100 이하의 양의 정수)을 입력받는다.

 

출력형식

주어진 형태대로 한변의 길이가 N인 문자마름모를 출력한다. 문자 사이는 한 개의 공백으로 구분한다. 주의 : 출력시 널문자('NULL', '\0')는 출력되지 않게 하세요..

 

<코드>

#include <stdio.h>

void check(char *c)
{
	if(*c > 'Z')
		*c = 'A';
}

int main()
{
	int n, x, y, len;
	char arr[200][200];
	char c = 'A';
	
	scanf("%d", &n);
	
	if(n<1||n>100)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	for(int i=0; i<n*2-1; i++)
	{
		for(int j=0; j<n*2-1; j++)
			arr[i][j] = ' ';
	}
	
	x = n-1;
	y = 0;
	len = n-1;
	
	while(1)
	{
		//LEFTDOWN
		for(int i=0; i<len; i++)
		{
			arr[y][x] = c++;
			check(&c);
			x--;
			y++;
		}
		
		//RIGHTDOWN
		for(int i=0; i<len; i++)
		{
			arr[y][x] = c++;
			check(&c);
			x++;
			y++;
		}
		
		//RIGHTUP
		for(int i=0; i<len; i++)
		{
			arr[y][x] = c++;
			check(&c);
			x++;
			y--;
		}
		
		//LEFTUP
		for(int i=0; i<len; i++)
		{
			arr[y][x] = c++;
			check(&c);
			x--;
			y--;
		}
		
		y++;
		len--;
		
		if(!len)
		{
			arr[y][x] = c++;
			break;
		}
	}
	
	for(int i=0; i<n*2-1; i++)
	{
		for(int j=0; j<n*2-1; j++)
			printf("%c ", arr[i][j]);
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

2074 : 홀수 마방진  (0) 2020.05.19
1495 : 대각선 지그재그  (0) 2020.05.12
1707 : 달팽이사각형  (0) 2020.05.12
2071 : 파스칼 삼각형  (0) 2020.05.07
1337 : 달팽이삼각형  (0) 2020.05.07

문제

정사각형의 크기를 입력 받은 후 시계방향으로 돌면서 다음과 같은 형태로 출력하는 프로그램을 작성하시오.

 

< 처리조건 >
(1) 가장 왼쪽 위의 좌표부터 차례로 숫자를 대입시킨다.
(2) 오른쪽으로 채워 나가다가 끝이면 다시 아래 → 왼쪽 → 위 →오른쪽의 순으로 모두 채워질때까지 반복한다.

 

 

 

 

 

 

입력형식

정사각형의 크기 n(1부터 100사이의 정수)을 입력받는다.

 

출력형식

위에서 언급한 형태로 정사각형의 내부 숫자를 차례로 채운 후의 모습을 출력한다. 숫자 사이는 공백으로 구분한다.

 

<코드>

#include <stdio.h>

enum direction{
	RIGHT,
	DOWN,
	LEFT,
	UP
};

int main()
{
	int n, num=1;
	int x=1, y=0;
	int arr[100][100] = {0, };
	int direction = RIGHT;
	
	scanf("%d", &n);
	
	if(n<1||n>100)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	while(1)
	{
		switch(direction)
		{
			case RIGHT:
				arr[y][x] = num++;
				if(x==n||arr[y][x+1])
				{
					y++;
					direction = DOWN;
				}
				else
					x++;
				break;
			
			case DOWN:
				arr[y][x] = num++;
				if(y==n-1||arr[y+1][x])
				{
					x--;
					direction = LEFT;
				}
				else
					y++;
				break;
				
			case LEFT:
				arr[y][x] = num++;
				if(x==1||arr[y][x-1])
				{
					y--;
					direction = UP;
				}
				else
					x--;
				break;
				
			case UP:
				arr[y][x] = num++;
				if(arr[y-1][x])
				{
					x++;
					direction = RIGHT;
				}
				else
					y--;
				break;
		}
		
		if(arr[y][x])
			break;
	}
	
	for(int i=0; i<n; i++)
	{
		for(int j=1; j<=n; j++)
			printf("%d ", arr[i][j]);
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1495 : 대각선 지그재그  (0) 2020.05.12
1331 : 문자마름모  (0) 2020.05.12
2071 : 파스칼 삼각형  (0) 2020.05.07
1337 : 달팽이삼각형  (0) 2020.05.07
1641 : 숫자삼각형  (0) 2020.05.07

문제

파스칼 삼각형이란 아래 <표1> 과 같은 

자신의 왼쪽 위의 좌표와 오른쪽 위의 좌표 값을 더해서 값을 계속 갱신시켜 나가는 형태의 삼각형을 말한다.

 

아래와 같은 파스칼 삼각형의 높이 n과 종류 m을 입력받은 후 다음과 같은 형태의 파스칼 삼각형을 출력하는 프로그램을 작성하시오.

 

 

 

<처리조건>
m에 대한 파스칼 삼각형의 모습은 아래 <표2>의 모습과 같다.

 



 

입력형식

삼각형의 높이n(1부터 30사이의 정수)과 종류m(1부터 3사이의 정수)을 입력받는다.

 

출력형식

위에서 제시한 형태의 파스칼 삼각형을 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다. 숫자는 한칸의 공백으로 구분하여 출력한다.

 

<코드>

#include <stdio.h>

void first(int n, int arr[][100])
{
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<=i; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
}

void second(int n, int arr[][100])
{
	for(int i=n-1; i>=0; i--)
	{
		for(int j=0; j<n-i-1; j++)
			printf(" ");
		
		for(int j=0; j<=i; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
}

void third(int n, int arr[][100])
{
	int x, y;
	for(int i=0; i<n; i++)
	{
		y = n-1;
		x = i;
		for(int j=0; j<=i; j++)
		{
			printf("%d ", arr[y][x]);
			x--;
			y--;
		}
		printf("\n");
	}
}

int main()
{
	int n, m;
	int arr[100][100] = {0, };
	
	scanf("%d %d", &n, &m);
	
	if(n<1||n>30||m<1||m>3)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<=i; j++)
		{
			if(!j||j==i)
				arr[i][j] = 1;
			else
				arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
		}
	}
	
	switch(m)
	{
		case 1:
			first(n, arr);
			break;
		case 2:
			second(n, arr);
			break;
		case 3:
			third(n, arr);
			break;
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1331 : 문자마름모  (0) 2020.05.12
1707 : 달팽이사각형  (0) 2020.05.12
1337 : 달팽이삼각형  (0) 2020.05.07
1641 : 숫자삼각형  (0) 2020.05.07
1329 : 별삼각형3  (0) 2020.05.06

문제

삼각형의 높이 N을 입력받아서 아래와 같이 숫자 0부터 달팽이 모양으로 차례대로 채워진 삼각형을 출력하는 프로그램을 작성하시오.

 

< 처리조건 >
왼쪽 위부터 시계방향으로 오른쪽 아래로 이동하면서 숫자 0부터 N개를 채우고 

다시 왼쪽으로, 다음은 위쪽으로 반복하면서 채워 나간다. (숫자 9 다음에는 0부터 다시 시작한다.)

 

 

 

 

입력형식

삼각형의 한변의 길이 N(N의 범위는 100 이하의 양의 정수)을 입력받는다.

 

출력형식

주어진 형태대로 높이가 N인 달팽이 삼각형을 출력한다. 숫자 사이는 한 개의 공백으로 구분한다.

 

<코드>

#include <stdio.h>
#include <string.h>

enum direction{
	DIAGONAL,
	LEFT,
	UP,
};

int main()
{
	int n, x=0, y=0;
	int direction = DIAGONAL;
	int num=0;
	int arr[100][100] = {0};
	
	scanf("%d", &n);

	for(int i=0; i<n; i++)
	{
		for(int j=0; j<n; j++)
			arr[i][j] = 10;
	}
	
	if(n<1||n>100)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	while(1)
	{
		switch(direction)
		{
			case DIAGONAL:
				arr[y][x] = num++;
				if(!(arr[y+1][x+1] == 10))
				{
					direction = LEFT;
					x--;
				}
				else
				{
					x++;
					y++;
				}
				break;
			case LEFT:
				arr[y][x] = num++;
				if(!x||!(arr[y][x-1] == 10))
				{
					direction = UP;
					y--;
				}
				else
					x--;
				break;
			case UP:
				arr[y][x] = num++;
				if(!(arr[y-1][x] == 10))
				{
					direction = DIAGONAL;
					x++;
					y++;
				}
				else
					y--;
				break;
		}
		
		if(num > 9)
			num = 0;
		
		if(arr[y][x] != 10)
			break;
	}
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<=i; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1707 : 달팽이사각형  (0) 2020.05.12
2071 : 파스칼 삼각형  (0) 2020.05.07
1641 : 숫자삼각형  (0) 2020.05.07
1329 : 별삼각형3  (0) 2020.05.06
1719 : 별삼각형2  (0) 2020.05.06

문제

삼각형의 높이 n과 종류 m을 입력받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오.

 

< 처리조건 >
종류 1번의 숫자의 진행 순서는 처음에 왼쪽에서 오른쪽으로 진행 한 후 방향을 바꾸어서 이를 반복한다.

 

 


 

 

입력형식

삼각형의 크기 n(n의 범위는 100 이하의 홀수)과 종류 m(m은 1부터 3사이의 정수)을 입력받는다.

 

출력형식

위에서 언급한 3가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다. 숫자사이는 공백으로 구분한다. 입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다.

 

<코드>

#include <stdio.h>

void first(int n)
{
	int arr[100][100] = {0};
	int num = 1;
	
	for(int i=0; i<n; i++)
	{
		if(i%2)
		{
			for(int j=i; j>=0; j--)
				arr[i][j] = num++;
		}
		else
		{
			for(int j=0; j<=i; j++)
				arr[i][j] = num++;
		}
	}
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<=i; j++)
			printf("%d ", arr[i][j]);
		
		printf("\n");
	}
}

void second(int n)
{
	int num = 0;
	
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<i; j++)
			printf("  ");
		for(int j=0; j<(n-i)*2-1; j++)
			printf("%d ", num);
		
		printf("\n");
		num++;
	}
	
}

void third(int n)
{
	int num = 1;
	
	for(int i=0; i<n/2; i++)
	{
		for(int j=0; j<=i; j++)
			printf("%d ", j+1);
		
		printf("\n");
	}
	
	for(int i=0; i<n/2+1; i++)
	{
		for(int j=0; j<(n/2)+1-i; j++)
			printf("%d ", j+1);
		
		printf("\n");
	}
}

int main()
{
	
	int n, m;
	
	scanf("%d %d", &n, &m);
	
	if(!(n%2)||n<1||n>100||m<1||m>3)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	switch(m)
	{
		case 1:
			first(n);
			break;
		case 2:
			second(n);
			break;
		case 3:
			third(n);
			break;
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

2071 : 파스칼 삼각형  (0) 2020.05.07
1337 : 달팽이삼각형  (0) 2020.05.07
1329 : 별삼각형3  (0) 2020.05.06
1719 : 별삼각형2  (0) 2020.05.06
1523 : 별삼각형1  (0) 2020.05.06

문제

삼각형의 높이 N을 입력받아 아래와 같은 모양을 출력하는 프로그램을 작성하시오.

 

 

 

입력형식

삼각형의 높이 N(N의 범위는 100 이하의 양의 홀수)을 입력받는다.

 

출력형식

N의 높이에 맞추어 주어진 형태의 모양을 출력한다.

입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"를 출력한다.

 

<코드>

#include <stdio.h>

int main()
{
	int n;
	
	scanf("%d", &n);
	
	if(!(n%2)||n>100||n<1)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	for(int i=0; i<n/2; i++)
	{
		for(int j=0; j<i; j++)
			printf(" ");
		for(int j=0; j<i*2+1; j++)
			printf("*");
		
		printf("\n");
	}
	
	for(int i=0; i<n/2+1; i++)
	{
		for(int j=0; j<(n/2)-i; j++)
			printf(" ");
		for(int j=0; j<(n/2-i)*2+1; j++)
			printf("*");
		
		printf("\n");
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1337 : 달팽이삼각형  (0) 2020.05.07
1641 : 숫자삼각형  (0) 2020.05.07
1719 : 별삼각형2  (0) 2020.05.06
1523 : 별삼각형1  (0) 2020.05.06
1339 : 문자삼각형2  (0) 2020.05.05

문제

삼각형의 높이 n과 종류 m을 입력받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오. 

다음은 n이 5인 경우의 예시이다.

 


 

 

입력형식

삼각형의 크기 n(n의 범위는 100 이하의 홀수)과 종류 m(m은 1부터 4사이의 정수)을 입력받는다.

 

출력형식

위에서 언급된 4가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다.

입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다. 

'*'과 '*' 사이에는 공백이 없다.

 

<코드>

#include <stdio.h>

void first(int n)
{
	int i;
	
	for(i=0; i<n/2; i++)
	{
		for(int j=0; j<=i; j++)
			printf("*");
		
		printf("\n");
	}
	
	for(; i<n; i++)
	{
		for(int j=0; j<n-i; j++)
			printf("*");
		
		printf("\n");
	}
}

void second(int n)
{
	int i;
	
	for(i=0; i<n/2; i++)
	{
		for(int j=0; j<(n/2)-i; j++)
			printf(" ");
		
		for(int j=0; j<=i; j++)
			printf("*");
		
		printf("\n");
	}
	
	for(; i<n; i++)
	{
		for(int j=0; j<i-(n/2); j++)
				printf(" ");
			
		for(int j=0; j<n-i; j++)
			printf("*");
		
		printf("\n");
	}
}

void third(int n)
{
	for(int i=0; i<n/2; i++)
	{
		for(int j=0; j<i; j++)
			printf(" ");
		for(int j=0; j<=(n/2-i)*2; j++)
			printf("*");
		
		printf("\n");
	}
	
	for(int i=0; i<n/2+1; i++)
	{
		for(int j=0; j<(n/2)-i; j++)
			printf(" ");
		for(int j=1; j<(i+1)*2; j++)
			printf("*");
		
		printf("\n");
	}
}

void fourth(int n)
{
	for(int i=0; i<n/2; i++)
	{
		for(int j=0; j<i; j++)
			printf(" ");
		for(int j=0; j<(n/2)-i+1; j++)
			printf("*");
		
		printf("\n");
	}
	
	for(int i=0; i<n/2+1; i++)
	{
		for(int j=0; j<n/2; j++)
			printf(" ");
		for(int j=0; j<=i; j++)
			printf("*");
		
		printf("\n");
	}
}

int main()
{
	int n, m;
	
	scanf("%d %d", &n, &m);
	
	if(n>100||n<1||!(n%2)||m>4||m<1)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	switch(m)
	{
		case 1:
			first(n);
			break;
		case 2:
			second(n);
			break;
		case 3:
			third(n);
			break;
		case 4:
			fourth(n);
			break;
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1641 : 숫자삼각형  (0) 2020.05.07
1329 : 별삼각형3  (0) 2020.05.06
1523 : 별삼각형1  (0) 2020.05.06
1339 : 문자삼각형2  (0) 2020.05.05
1338 : 문자삼각형1  (0) 2020.05.05

문제

삼각형의 높이 n과 종류 m을 입력받은 후 다음과 같은 삼각형 형태로 출력하는 프로그램을 작성하시오.

 

 

 

 

 

입력형식

삼각형의 크기 n(n의 범위는 100 이하의 자연수)과 종류 m(m은 1부터 3사이의 자연수)을 입력받는다.

 

출력형식

위에서 언급한 3가지 종류를 입력에서 들어온 높이 n과 종류 m에 맞춰서 출력한다.

입력된 데이터가 주어진 범위를 벗어나면 "INPUT ERROR!"을 출력한다.

 

<코드>

#include <stdio.h>

void first(int n)
{
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<=i; j++)
			printf("*");
		
		printf("\n");
	}
}

void second(int n)
{
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<n-i; j++)
			printf("*");
		
		printf("\n");
	}
}

void third(int n)
{
	for(int i=0; i<n; i++)
	{
		for(int j=0; j<n-i-1; j++)
			printf(" ");
		for(int j=1; j<(i+1)*2; j++)
			printf("*");
		
		printf("\n");
	}
}

int main()
{
	int n, m;
	
	scanf("%d %d", &n, &m);
	
	if(n>100||n<1||m>3||m<1)
	{
		printf("INPUT ERROR!");
		return 0;
	}
	
	switch(m)
	{
		case 1:
			first(n);
			break;
		case 2:
			second(n);
			break;
		case 3:
			third(n);
			break;
	}
	
	return 0;
}

'코딩 > Beginner Coder' 카테고리의 다른 글

1329 : 별삼각형3  (0) 2020.05.06
1719 : 별삼각형2  (0) 2020.05.06
1339 : 문자삼각형2  (0) 2020.05.05
1338 : 문자삼각형1  (0) 2020.05.05
1314 : 문자사각형2  (0) 2020.05.05

+ Recent posts