1. 程式人生 > 實用技巧 >2. C語言猴子吃桃問題

2. C語言猴子吃桃問題

猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個。第二天早上又將第一天剩下的桃子吃掉一半,有多吃了一個。以後每天早上都吃了前一天剩下的一半零一個。到第 10 天早上想再吃時,發現只剩下一個桃子了。編寫程式求猴子第一天摘了多少個桃子。

實現過程:

(1) 定義 day、x1、x2 為基本整型,併為 day 和 x2 賦初值 9 和 1。

(2) 使用 while 語句由後向前推出第一天摘的桃子數。

(3) 輸出結果。

(4) 程式程式碼如下:

 1 #include <stdio.h>
 2 int main()
 3 {
 4     intday,x1,x2;    /*
定義 day、x1、x2 3 個變董為基本整型*/ 5 day=9; 6 x2=1; 7 while(day>0) 8 { 9 x1=(x2+1)*2; /*第一天的桃子數是第二天桃子數加1後的2倍*/ 10 x2=x1; 11 day--; /*因為從後向前推所以天數遞減*/ 12 13 } 14 printf("the total is %d\n",x1); /* 輸出桃子的總數*/ 15 return 0; 16 }

執行結果:

the total is 1534

技術要點:

本例項的思路基本上是先找出變數間的關係,也就是要明確第一天桃數和第二天桃子數之間的關係,即第二天桃子數加 1 的 2 倍等於第一天的桃子數。


感謝你的閱讀,請用心感悟!更多內容請關注微信公眾號:C語言自學網 ;希望可以幫到愛學習的你!!分享也是一種快樂!!!請接力。。。

點選檢視原文,謝謝!