【问题描述】
远望巍巍塔七层,红灯点点倍加增;
共灯三百八十一,请问尖头几盏灯?
这是出自明代数学家吴敬《九章算法比类大全》书中的一道算题,它的意思是说:
从远处看到一座雄伟的7层宝塔,每层都挂着红灯笼。宝塔从上到下每层灯笼数量都是上一层的2倍。已知整座宝塔总共有381盏灯,请问宝塔顶层有几盏灯?
【编程思路】
这个问题是简单的“等比问题”,运用按比例分配的方法就能求解答案。
按题意可知,这座7层宝塔上的灯是上少下多。从上到下算,假设第一层(最上层)的灯数为1份,则第2层至第7层(在地面的一层),每层的灯数比上一层多一倍,分别是2、4、8、16、32、64份,把它们加起来就得到灯的总份数。
又已知灯的总数为381盏,则用总灯数除以总份数就能得到1份所占的灯数,之后就可以按各层所占份数求出各层的灯数了。
【程序】
根据上面介绍的解题方法,编写程序求解答案,该程序清单如图所示:

运行该程序,得到答案:顶层有3盏灯。


