这类题目的算法,在西洋数学中叫作积弹(Piles of Shot)和拟形数(Figurate numbers),又叫拟形级数(Figurate series)。[29]中国叫垛积,旧数学中和它类似的算法,属于“少广”一类。最早的见于朱世杰的《四元玉鉴》中“茭草形段”“如像招数”和“果垛叠藏”各题,后来郭守敬、董祜诚、李善兰这些人的著作中把它讲得更详细。
这里我们先说大家从西洋数学中容易找到的积弹。积弹的计算法,已有一定的公式,因了堆积的方法不同分为四类:如图41各层是成正方形的,图42各层是成正三角形的,图43各层是成矩形的,但这三种到顶上都是尖的。图44,各层都成矩形而顶上是平的,用数学上的名字来说,第一是正方锥,第二是正三角锥,第三侧面是等腰三角形,正面是等腰梯形,第四侧面和正面都是等腰梯形。
所谓积弹,一般是知道了层数计算总数,在这里且先将各公式写出来。
(1)设n表示层数,也就是王老头子的汤团底层每边的个数,若王老头子的汤团是照图41的形式堆,则汤团的总数是:
所以,若是王老头子的那盘汤团有十层,那就是n等于10,因此,
(2)若王老头子的汤团是照图42的形式堆,那么,
所以,他若是也只堆十层,总数便是:
(3)图43中,这一种不但和层数有关系,并且同着顶上一层的个数也有关系,设顶上一层有p个,则
举个例子说,若顶上一层有五个,一共有十层,就是p等于5,n等于10,则
(4)自然图44中这种和第一层的个数也有关系,而第一层既然也是矩形,它的个数就和这矩形的长阔两边的个数有关。设顶上一层长边有a个,阔边有b个,则
举个例子说,若第一层的长边有五个,阔边有三个,一共有十层,就是a等于5,b等于3,n等于10;则
不用说,已经有公式,只要照它计算出一个总数,这是很容易。不过我们的问题是这公式怎样得来的。
要证明这公式,我们有三种方法。