如何用C語言程式實現 猴子吃桃問題 猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了

2021-04-27 16:29:56 字數 5492 閱讀 3935

1樓:匿名使用者

#include

void main()

c語言程式設計:猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多

2樓:匿名使用者

#include

int main(void)

printf("the monkey got %ld peachs in first day.\n",x);}

1、編寫一個程式,求解猴子吃桃問題。猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了

3樓:匿名使用者

(1+1)×2=4

(4+1)×2=10

(10+1)×2=22

(22+1)×2=46

(46+1)×2=94

(94+1)×2=190

(190+1)×2=382

(382+1)×2=766

(766+1)×2=1534

(1534+1)×2=3070

應該是這麼多。。。

4樓:小進進吖

前端**實現:

let i = 0 ,a =1;

while (i<9)

console.log(a);

5樓:xjy丶畏光

不會。也想知道答案。

6樓:布 道

。。。。。和我們書上一模一樣-_-

猴子吃桃問題。猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個。

7樓:匿名使用者

這個程式要用逆推的方法,一個迴圈就夠了內:

#include

#include

main()

8樓:聽不清啊

#include

void main()

while(day<10);

if(a==1)

printf("t=%d\n",t);}}其實,上面的程式不夠嚴密:如a是一個奇數,程式照樣可以執行;但是卻與題目所述不符。所以最好改為如下(執行結果相同):

#include

void main()

while(day<10);

if(a==1&&day==10)

printf("t=%d\n",t);

else a=0;}}

c語言6.19 題目描述 猴子吃桃問題。猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多

9樓:匿名使用者

#include

int main(void){

int num=1,i,n=10;

//scanf("%d",&n);

for(i=1;i

10樓:幻幻幻幻幻影

#include

int main()

printf("猴子

duzhi第一天dao

摘了回%d個桃

答子\n",x);

return 0;}

猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個,第二天早上又將剩下的桃

11樓:匿名使用者

1 4 10 22 46 94 190 382 766 1534【程式21】

題目:bai

猴子du吃桃問題:猴子第一天

zhi摘下若干個dao桃子,當即吃了一半,還不版癮權,又多吃了一個

第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以後每天早上都吃了前一天剩下

的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。

1.程式分析:採取逆向思維的方法,從後往前推斷。

2.程式源**:

main()

printf("the total is %d\n",x1);}

12樓:99人間百科百曉生

推呀:第九天吃完只剩一個了,那麼就是(1+1)x2=4個第八天:

10個第七天:22個

第六天專:46個

第五天屬:94個

第四天:190個

第三天:382個

第二天:766個

第一天總共有:(766+1)x2=1534個所以共摘了1534個桃子!!

13樓:小

天數復n與剩下的制

桃子f之間的關係是

:f(n)=f(n-1)/2-1

倒推的話是:f(10)=1; f(n-1)=(f(n)+1)*2#include

void main()}

14樓:一半加一

int tian=9;//實際吃的天數

int yi=1;//最後復

所剩制的桃子

while(tian>0)

printf("%d",yi);

15樓:佑民元

第10天1個,可知第9天4個,第8天10個,第7天22個,以此類推,46,94,190,382,766,1534

16樓:匿名使用者

程式中錯誤bai比較多:

1、是du一個思維問題,猴子zhi吃桃子會不會把一個dao桃子分兩半來吃,你在回程式中使用了實數,而不是答整數,應該判斷是不是能夠被2整除;

2、i使用實數,也就是浮點數,而輸出的時候使用的是%d的格式,所以,輸出為0,可以改變格式為%f,或者將i轉變成整數(printf("%d\n",(int)i);)

3、在外迴圈內部,改變了迴圈控制變數的值,也就是i的值,第一個迴圈下來,i的值就成了0了,所以不可能再迴圈,即使再迴圈,結果也不是要判斷的i值,而是經過多次運算後的結果:1,你可以引入另外一個變數來做內迴圈和進行判斷。

void main()

if(k==1) break;

}printf("%d\n",i);

/* int i,j;

j=1;

for(i=0;i<10;i++)

j=(j+1)*2;

printf("%d\n",j);*/}

17樓:小進進吖

let i = 0 ,a =1;

while (i<9)

console.log(a);

18樓:匿名使用者

#include

int main(void)

}printf("\ntotal=%d\n",a);

return 0;}

猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個

19樓:匿名使用者

1 4 10 22 46 94 190 382 766 1534【程式21】

題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個

第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以後每天早上都吃了前一天剩下

的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。

1.程式分析:採取逆向思維的方法,從後往前推斷。

2.程式源**:

main()

printf("the total is %d\n",x1);}

20樓:丿rand灬杺塵

public class houzi

system.out.println(sum);}}

21樓:匿名使用者

int x = 1, i = 9;

for (i = 9; i >= 1; i--)

22樓:乘賢歸鵬雲

設:長x,寬y

則,外圍棋子數2x+2y-4,中心棋子數(x-2)*(y-2)且,2x+2y-4=(x-2)*(y-2)得,x(y-4)=4(y-2)

例,y=5時,x=12;y=6時,x=8;……所以,此題有多解

23樓:匿名使用者

dfdss fesrewrewrqevbnn cghth fghtljjhf. jghjhjhgjh yut7ui .ghyg hjhgj yyud sdtsd fgfg nfgh.

bay.

1、猴子吃桃問題。猴子第一天摘下若干桃子,當即吃了一半,還不過癮,又多吃了一個。第二

24樓:巨蟹

^設猴子第一天公摘了抄x個桃子。

則第一天吃了後,剩下的

桃子=(x/2)-1 = (x/(2^1)) - ((2^1)-1)/(2^(1-1))

第二天吃了後,剩下的桃子數=((x/2)-1)/2) -1 =(x/4) - (1/2) - 1 =(x/(2^2)) - ((2^2)-1)/(2^(2-1));

所以,第n(n<9) 天吃了後,剩下的桃子數= (x/(2^n)) - ((2^n)-1)/(2^(n-1))

第10天早上發現只有一個了,即第九天吃了後,剩下的桃子只有一個了。即:

(x/(2^9) - ((2^9)-1)/(2^(9-1))=1,

x=(2^9)+2*(2^9-1)=(2^9)+(2^10)-2 =512+1024-2=1534;

25樓:小婷子

答案是第一天一共來摘自了: 按照倒推的方法 第十天1顆桃 第九天4顆桃 第八天10顆桃 第七天22個桃 第六天46個桃 第五天94個桃 第四天190個桃 第三天382個桃 第二天766個桃 第一天1534個桃 希望採納、、、

26樓:匿名使用者

/*猴子吃桃問題*/

#include

main()

printf("第一天共

zhi摘了%d個桃子\n",sum);

}/*具體思路dao如下專:

第10天剩餘屬

桃數:1

第9天剩餘桃數:(1+1)*2=4

第8天剩餘桃數:(4+1)*2=10

第7天剩餘桃數:(10+1)*2=22

第6天剩餘桃數:(22+1)*2=46

第5天剩餘桃數:(46+1)*2=94

第4天剩餘桃數:(94+1)*2=190

第3天剩餘桃數:(190+1)*2=382第2天剩餘桃數:(382+1)*2=766第1天剩餘桃數:

(766+1)*2=1534。。。規律很明顯,即每天剩餘的桃數是第二天桃數加1的兩倍。*/

27樓:南霸天

#include

void main()

printf("total=%d\n",x1);}

28樓:會呼吸的痛

樓上的,應該是while(day>1)

如何用c語言fopen函式實現這樣的檔案開啟功能

fopen函式用於開啟檔案並獲取檔案的指標,以便對檔案進行操作。函式原型 file fopen const char path,const char mode 引數 path字串包含欲開啟的檔案路徑及檔名,引數mode字串則代表著流形態。mode有下列幾種形態字串 r 以只讀方式開啟檔案,該檔案必須...

如何用c語言編寫程式輸出500以內最大的素數及

include include int prime int n main printf nthe sum is d.n sum 演算法簡單,直接從500到1迴圈,判斷每個數是否為素數,如果是素數,輸出,並累加,一直判斷出10個素數,終止迴圈,輸出累加總數。例程 include int main if...

請教如何用C語言實現10進位制轉換5進位制的轉換器

這是我資料結構課上老師留的課堂作業,但是此 並非本人原創。但已通過驗證。這個 可以把十進位制的轉換成任意進位制的。include include define stack init size 50 define stack increment 10 棧定義 typedef structstack 構...