帕斯卡三角形是向工程学生教授的典型例子之一。 它有很多的解释。 其中一个着名的是它与二项式方程的使用。
三角形之外的所有值都被认为是零(0)。 第一行为0 1 0,而只有1获取帕斯卡三角形中的空格,0是不可见的。 通过添加(0 + 1)和(1 + 0)来获取第二行。 输出夹在两个零之间。 该过程一直持续到达到所需的水平。
Pascal三角形可以使用二项式定理导出。 我们可以使用组合和阶乘来实现这一点。
实现
C语言中弗洛伊德三角形的实现如下 –
#include int factorial(int n) { int f; for(f = 1; n > 1; n--) f *= n; return f; } int ncr(int n,int r) { return factorial(n) / ( factorial(n-r) * factorial(r) ); } int main() { int n, i, j; n = 5; for(i = 0; i <= n; i++) { for(j = 0; j <= n-i; j++) printf(" "); for(j = 0; j <= i; j++) printf(" %3d", ncr(i, j)); printf("n"); } return 0; }
执行上面示例代码,得到以下结果 –
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
¥ 我要打赏 纠错/补充 收藏