楊輝三角,又叫帕斯卡三角形,是一個三角形矩陣,其頂端是 1,視為(row0).第1列(row1)(1&1)兩個1,這兩個1是由他們上頭左右兩數之和 (不在三角形內的數視為0).依此類推產生第2列(row2):0+1=1;1+1=2;1+0=1.第3列(row3):0+1=1;1+2=3; 2+1=3;1+0=1. 循此法可以產生以下諸列。

(a+b)^n的展開式中的各項系數依次對應楊輝三角的第(n+1)行中的每一項。
由此可通過排列組合式來求得其對應的每一項系數,即楊輝三角的對應位置的值。
組合公式為:c(n,m)=p(n,m)/m!=n!/((n-m)!*m!)
~~~
#include <iostream>
using namespace std;
#define SIZE_TRIANGLE 12
int ResultGet(int row, int column)
{//row為行數,column為列數,該函數返回該位置的數字
float fResult = 1;
int nBack = 0;
for (int i=1; i<= column; i++)
{
fResult *= (float)(row - i + 1)/i;
}
nBack = fResult;
return nBack;
}
int main()
{
for (int i = 0; i<= SIZE_TRIANGLE; i++)
{
for (int k =0; k<(SIZE_TRIANGLE - i); k++)
{
cout<<" "; //輸出每行前面的括號
}
for (int j = 0; j<= i; j++)
{
printf("%3d", ResultGet(i,j));
cout<<" ";
}
cout<<endl;
}
system("pause");
return 1;
}
~~~