C++程序题,编猴子吃桃问题

C++程序题,编猴子吃桃问题,第1张

这个题有两个解法,一种是从第9天算,设第九天吃的是x个,则x+1为第九天没吃之前的总数,而第十天是1个,有方程(x+1)/2-1=1;得x=3;

再从第九天倒推,可得总数。

int i=0;

int sum=4;

while(i++<9){sum=sum2+2;}即是总数。

另一种是从第一天开始正推,不过这个比较麻烦。

int i=1;

while(i++<500)

{

int sum=i2;

for(int temp=0;temp<10;temp++){

if(sum%2!=0)break;

else sum=sum/2-1;

}

if(sum=1)return i2;

}

private Sub Rorm_Click()

Dim n%,i%

x=1

Print"第七天的桃子数位:1只"

For i=6 To 1 Step-1

x=(x+1)2

Print"第";i;“天的桃子数位:”;x;“只”

Next

End Sub

/猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。/

/第二天又将剩下的桃子吃掉一半,又多吃了一个。/

/以后每天都吃前一天剩下的一半零一个。/

/到第10天在想吃的时候就剩一个桃子了/

/问第一天共摘下来多少个桃子?/

#include <stdioh>

#include <stdlibh>

#include <conioh>

/第n天所剩桃子数/

int getPeachNumber (int n) {

int num; /定义所剩桃子数/

int i=0;

if (n==10)  

       return 1; /递归结束/

else {

num = getPeachNumber(n+1)2 + 2; /递归/

printf("第%d天:%d个桃子\n", n, num); /第n天剩num个桃子/ 

}

    return num;

}

int main (void) {

    int num;

    

    puts ("每天剩余的桃子数:");

    num = getPeachNumber (1);

    putchar ('\n');

    

    puts ("================================================================");

    putchar ('\n');

    printf("猴子第一天摘了%d个桃子!\n", num);

putchar ('\n');

getch (); /屏幕暂留/

return 0;

}

运行结果

我做过的练习。

题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

#include "stdioh"

main()

{

int sum=1,i;

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

sum=(sum+1)2;

printf("猴子共摘了%d个桃子。\n",sum);

}

以上就是关于C++程序题,编猴子吃桃问题全部的内容,包括:C++程序题,编猴子吃桃问题、vb程序设计题(猴子吃桃,第一天摘了若干个桃子,当即吃了一半多一、C语言猴子吃桃问题递归法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9678019.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存