'파스칼의 삼각형'에 해당되는 글 1건

  1. 2010.11.16 파스칼의 삼각형 - C++에서 파스칼 삼각형을 만들어보자

파스칼의 삼각형은 수학에서 이항계수를 삼각형 모양의 기하학적 형태로 배열한 것이다. 이것은 블레즈 파스칼에 의해 이름 붙여졌으나 이미 수세기 전에 다른 사람들에게서 연구된 것이다.

단순한 형태로, 파스칼의 삼각형은 다음과 같은 방법으로 만들 수 있다.

1.먼저 첫 번째 줄에는 숫자 1을 쓴다.
2.그 다음 줄을 만들려면, 바로 위의 왼쪽 숫자와 오른쪽 숫자를 더한다. 예를 들어, 네 번째 줄의 숫자 1과 3을 더하여 다섯 번째 줄의 4가 만들어진다.

자료출처 : 위키백과


파스칼의 삼각형 모양 1


소스)
#include < stdio.h >

void Pascal(int n)
{
	int i, j;
	int p[10][20]={0};

	p[1][n]=1;
	for (i=2; i<=n; i++){
		for (j=1; j<=n*2; j++){
			p[i][j] = p[i-1][j-1] + p[i-1][j+1];
		}
	}

	for (i=1; i<=n; i++){
		for (j=1; j<=n*2; j++){
			if (p[i][j] == 0) printf("  ");
			else printf("%d ", p[i][j]);
		}
		printf("\n");
	}
}

int main()
{
	int n;

	printf("몇 줄까지 출력할까요? ");
	scanf("%d", &n);

	Pascal(n);

	return 0;
}

파스칼의 삼각형 모양 2

소스)
#include < stdio.h >

void Pascal(int n)
{
	int i, j;
	int p[10][10]={0};

	p[1][1]=1;
	for (i=2; i<=n; i++){
		for (j=1; j<=i; j++){
			p[i][j] = p[i-1][j-1] + p[i-1][j];
		}
	}

	for (i=1; i<=n; i++){
		for (j=1; j<=i; j++){
			printf("%d ", p[i][j]);
		}
		printf("\n");
	}
}

int main()
{
	int n;

	printf("몇 줄까지 출력할까요? ");
	scanf("%d", &n);

	Pascal(n);

	return 0;
}
Posted by 파이군
,