猴子吃桃問(wèn)題:有一堆桃子不知數(shù)目,猴子第一天吃掉一半,覺(jué)得不過(guò)癮,又多吃了一只,第二天照此辦法,吃掉剩下桃子的一半另加一個(gè),天天如此,到第十天早上,猴子發(fā)現(xiàn)只剩一只桃子了,問(wèn)這堆桃子原來(lái)有多少個(gè)?

答案:
解析:

  解:本題的算法如下:

  第一步:a1←1;{第10天的桃子數(shù),a1的初值}

  第二步:i←9;{計(jì)數(shù)器初值為9}

  第三步:a0←2×(a1+1);{計(jì)算當(dāng)天的桃子數(shù)}

  第四步:a1←a0;{將當(dāng)天的桃子數(shù)作為下一次計(jì)算的初值}

  第五步:i←i-1;

  第六步:若i≥1,轉(zhuǎn)第三步;

  第七步:輸出a0的值.

  偽代碼如下:

  a1←1

  i←9

  If i≥1 Then

  a0←2×(a1+1)

  a1←a0

  i←i-1

  End If

  Print a0

  流程圖如下圖所示:

  分析:此題粗看起來(lái)有些無(wú)從著手的感覺(jué),那么怎樣開始呢?假設(shè)第一天開始時(shí)有a1只桃子,第二天有a2只,…,第9天有a9只,第10天有a10只.在a1,a2,…,a10中,只有a10=1是知道的,現(xiàn)要求a1,而我們可以看出a1,a2,…,a10之間存在一個(gè)簡(jiǎn)單的關(guān)系:

  a9=2×(a10+1),

  a8=2×(a9+1),

  …

  a1=2×(a2+1).

  也就是:ai=2×(ai+1+1),i=9,8,7,6,…,1.

  這就是此題的數(shù)學(xué)模型.

  再考查上面從a9,a8直至a1的計(jì)算過(guò)程,這其實(shí)是一個(gè)遞推過(guò)程,這種遞推的方法在計(jì)算機(jī)解題中經(jīng)常用到.另一方面,這九步運(yùn)算從形式上完全一樣,不同的只是ai的下標(biāo)而已.由此,我們引入循環(huán)的處理方法,并統(tǒng)一用a0表示前一天的桃子數(shù),a1表示后一天的桃子數(shù).


提示:

  這類題的解法是一個(gè)從具體到抽象的過(guò)程,具體方法是:

  (1)弄清如果由人來(lái)做,應(yīng)該采取哪些步驟;

  (2)對(duì)這些步驟進(jìn)行歸納整理,抽象出數(shù)學(xué)模型;

  (3)對(duì)其中的重復(fù)步驟,通過(guò)使用相同變量等方式求得形式的統(tǒng)一,然后簡(jiǎn)練地用循環(huán)解決.


練習(xí)冊(cè)系列答案
相關(guān)習(xí)題

科目:高中數(shù)學(xué) 來(lái)源:學(xué)習(xí)高手必修三數(shù)學(xué)蘇教版 蘇教版 題型:044

猴子吃桃問(wèn)題:有一堆桃子不知數(shù)目,猴子第一天吃掉一半,覺(jué)得不過(guò)癮,又多吃了一只,第二天照此辦法,吃掉剩下桃子的一半另加一個(gè),天天如此,到第十天早上,猴子發(fā)現(xiàn)只剩一只桃子了,問(wèn)這堆桃子原來(lái)有多少個(gè)?用流程圖和偽代碼表示問(wèn)題的算法.

查看答案和解析>>

科目:高中數(shù)學(xué) 來(lái)源:訓(xùn)練必修三數(shù)學(xué)蘇教版 蘇教版 題型:044

猴子吃桃問(wèn)題:有一堆桃子不知數(shù)目,猴子第一天吃掉一半,覺(jué)得不過(guò)癮,又多吃了一個(gè),第二天照此辦法,吃掉剩下桃子的一半另加一個(gè),天天如此.到第十天早上,猴子發(fā)現(xiàn)只剩一只桃子了,問(wèn)這堆桃子原來(lái)有多少個(gè)?試寫出算法和偽代碼.

查看答案和解析>>

同步練習(xí)冊(cè)答案