파스칼의 삼각형은 삼각형 형태의 정수 표현입니다. 그것의 유명한 표현 중 하나는 이항 방정식입니다. 이를 달성하기 위해 조합과 계승을 사용할 수 있습니다.
파스칼 삼각형 만들기
삼각형 외부의 모든 값은 영(0)으로 간주됩니다. 첫 번째 행은 0 1 0인 반면 파스칼의 삼각형에서는 1만 공간을 확보하고 0은 보이지 않습니다. 두 번째 행은 (0+1)과 (1+0)을 더하여 얻습니다. 출력은 두 개의 0 사이에 끼어 있습니다. 필요한 수준에 도달할 때까지 프로세스가 계속됩니다.
프로그래밍 방식으로 파스칼 삼각형은 선행 행에 인접한 요소를 추가하여 구성된 배열로 정의됩니다.
프로그램 1
이 프로그램에서는 Using Array −
를 사용하여 Pascal Triangle 형식의 정수를 인쇄합니다.#include <stdio.h> int fact(int); int main(){ int i,rows,j; printf("enter no of rows :"); scanf("%d",&rows); for (i = 0; i < rows; i++){ for (j = 0; j <= (rows- i - 2); j++) printf(" "); for (j = 0 ; j <= i; j++) printf("%d ",fact(i)/(fact(j)*fact(i-j))); printf("\n"); } return 0; } int fact(int n){ int a; int sum = 1; for (a = 1; a <= n; a++) sum = sum*a; return sum; }
출력
Enter no of rows :5 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
프로그램 2
여기서는 배열을 사용하지 않고 Pascal Triangle 형식으로 정수를 인쇄하는 것을 볼 수 있습니다.
#include<stdio.h> int main(){ int num,row,i; printf("Enter the number of rows: "); scanf("%d",&num); for(row=1; row<=num; row++){ int a=1; for(i=1; i<=row; i++){ printf("%d ",a); a = a * (row-i)/i; } printf("\n"); } return 0; }
출력
Enter the number of rows: 6 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1