2017.11.18 11:12

정올 파스칼삼각형

조회 수 512 추천 수 0 댓글 0

#include <stdio.h>

int result[30][30]={0};

void pr(int n, int m);
int Add1(int i, int j);
int Add2(int i, int j);
int Add3(int i, int j);
int F(int i, int j);
void one(int n);
void two(int n);
void three(int n);
int main(void)
{
	int n, m;
	scanf("%d %d", &n, &m);
	switch(m)
	{
		case 1:
			one(n);
			break;
		case 2:
			two(n);
			break;
		case 3:
			three(n);
			break;
	}
	pr(n, m);
	return 0;
}
void pr(int n, int m)
{
	int i, j;
	for(i=0; i<n; i++)
	{
		for(j=0; j<n; j++)
		{
			if(result[i][j]==0 && m!=2)
				break;
			else if(result[i][j]==0 && m==2)
				printf(" ");
			else
				printf("%d ", result[i][j]);
		}
		printf("\n");
	}
}
int F(int i, int j)
{
	if(i<0 || i>30 || j<0 || j>30)
		return 0;
	else
		return result[i][j];
}
int Add1(int i, int j)
{
	return F(i-1, j-1) + F(i-1, j);
}
void one(int n)
{
	int i, j;
	result[0][0]=1;
	for(i=1; i<n; i++)
	{
		for(j=0; j<=i; j++)
		{
			result[i][j]=Add1(i, j);
		}
	}
}
int Add2(int i, int j)
{
	return F(i+1, j+1) + F(i+1, j);
}
void two(int n)
{
	int i, j;
	result[n-1][n-1]=1;
	for(i=n-2; i>=0; i--)
	{
		for(j=n-1; j>=i; j--)
		{
			result[i][j]=Add2(i, j);
		}
	}
}
int Add3(int i, int j)
{
	return F(i, j+1) + F(i+1, j+1);
}
void three(int n)
{
	int i, j;
	result[n-1][n-1]=1;
	for(j=n-2; j>=0; j--)
	{
		for(i=n-1; i>=j; i--)
		{
			result[i][j]=Add3(i, j);
		}
	}
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 747
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1507
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2854
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 11243
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 5172
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 9002
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 19448
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 38325
230 정올 기초다지기(aF005-구조체5) killerjack 2014.10.25 480
229 정올 - 실력키우기 - 팩토리얼(1309) 조정미 2018.01.02 480
228 정올 - 알고리즘 - 줄세우기(1871) 조정미 2018.05.19 481
227 정올 함수1 형성평가5 정승준 2018.12.22 482
226 홀수면 n수까지 홀수 출력 짝수면 n수까지 짝수 출력(승민) 승민 2016.08.20 490
225 정올 기초다지기(aB001-문자열1) killerjack 2014.09.20 493
224 정올 기초다지기(aB007-문자열1)ver 내꺼. killerjack 2014.09.27 493
223 정올 - 실력키우기 - 10진수를 2 8 16진수로(1534) 조정미 2017.12.16 494
222 원 반지름 구하기 선우 2016.07.02 495
221 정올 기초다지기(aG002-포인터2) killerjack 2014.11.15 502
220 정올 기초다지기 함수3 자가진단 5 남쌤꺼 좋은아빠되기 2014.08.16 510
219 정올 - 알고리즘 - 극장좌석(1848) 조정미 2018.04.21 510
» 정올 파스칼삼각형 조정미 2017.11.18 512
217 정올 - 실력키우기 - 각자리수의 역과 합(1009) 조정미 2017.12.27 516
216 정올 기초다지기(문자열1-자가진단8) killerjack 2014.09.20 529
215 정올 기초다지기(구조체-자가진단5) killerjack 2014.10.11 536
214 정올 기초다지기(포인터-자가진단6) killerjack 2014.11.15 538
213 영단어 입력한후 그단어중 가장큰 아스키코드 구하기(승민) 승민 2016.04.02 545
212 정올 기초다지기(포인터-자가진단7) killerjack 2014.11.15 550
211 정올 기초다지기(aF002-구조체1) killerjack 2014.10.11 552
Board Pagination Prev 1 ... 10 11 12 13 14 15 16 17 18 19 ... 26 Next
/ 26