巴斯卡三角形
北宋人贾宪约1050年首先使用"贾宪三角"进行高次开方运算。
杨辉,字谦光,南宋时期杭州人。在他1261年所著的《详解九章算法》一书中,辑录了如上所示的三角形数表,称之为"开方作法本源"图,并说明此表引自11世纪前半贾宪的《释锁算术》,并绘画了"古法七乘方图"。故此,杨辉三角又被称为"贾宪三角"。
元朝数学家朱世杰在《四元玉鉴》(1303年)扩充了"贾宪三角"成"古法七乘方图"。
意大利人称之为"塔塔利亚三角形"(Triangolo di Tartaglia)以纪念在16世纪发现一元三次方程解的塔塔利亚。
在欧洲直到1623年以后,法国数学家帕斯卡在13岁时发现了"帕斯卡三角"。
布莱士帕斯卡的著作Traité du triangle arithmétique(1655年)介绍了这个三角形。帕斯卡搜集了几个关于它的结果,并以此解决一些概率论上的问题,影响面广泛,Pierre Raymond de Montmort(1708年)和亚伯拉罕?棣?美弗(1730年)都用帕斯卡来称呼这个三角形。
近年来国外也逐渐承认这项成果属于中国,所以有些书上称这是"中国三角形"(Chinese triangle)
历史上曾经独立绘制过这种图表的数学家
- 贾宪 中国北宋 11世纪 《释锁算术》
- 杨辉 中国南宋1261《详解九章算法》记载之功
- 朱世杰 中国元代 1299《四元玉鉴》级数求和公式
- 阿尔 卡西 阿拉伯 1427《算术的钥匙》
- 阿皮亚纳斯德国 1527
- 施蒂费尔 德国 1544《综合算术》二项式展开式系数
- 薛贝尔 法国 1545
- 帕斯卡 法国 1654《论算术三角形》
组合数计算方法:C(n,m)=n!/[m!(n-m)!]
(a+b)^n的展开式中的各项系数依次对应杨辉三角的第(n+1)行中的每一项。
将第2n+1行第1个数,跟第2n+2行第3个数、第2n+3行第5个数……连成一线,这些数的和是第4n+1个斐波那契数;将第2n行第2个数(n>1),跟第2n+1行第4个数、第2n+2行第6个数……这些数之和是第4n+2个斐波那契数。
1+10+45+120+…+10+1=1024
如何求出某一列、某一個特定數字之值
其中叫作組合,意思是在n個数字中要选取r個的方法数。
C语言实现:
#include <stdio.h> #define N 12 long combi(int n, int r){ int i; long p = 1; for(i = 1; i <= r; i++) p = p * (n-i+1) / i; return p; } void paint() { int n, r, t; for(n = 0; n <= N; n++) { for(r = 0; r <= n; r++) { int i;/* 排版设定开始 */ if(r == 0) { for(i = 0; i <= (N-n); i++) printf(" "); }else { printf(" "); } /* 排版设定结束 */ printf("%3d", combi(n, r)); } printf("\n"); } } int main() { paint(); return 0; }
文/闫鑫原创