有5只猴子上山去摘桃,一直摘到天黑。5只猴子把所有的桃子放在一起,然后约定第二天一早来分桃。
第二天早晨,来了一只猴子。他等了一会后心想:不如干脆我把桃子分了吧。于是他把桃子分成了五等份,分完后发现多了一只桃子。他想:我这么辛苦把桃子分了,这多出的一只桃子理应归我!于是他吃了这只桃子,然后带上一等份桃子,走了!
过了一会,第二只猴子来了。他也等了一会。不耐烦之后也把桃子分成了五等份,也发现多一只桃子。他同样吃了那桃子之后也带走了一等份桃子。
后来,第三、第四、第五只猴子都是先五等分桃子,然后吃掉多出来的一个桃,最后再带走一等份桃子。
问最初一共有多少只桃子?
这个问题其实是有数学解的,但是数学解很难想到。现在我们编写一个Python程序,在不依赖数学解的情况下解决这个问题。这个问题乍一看似乎有不小难度,但是如果按照自顶向下的程序设计方法,这个问题也不难解决。