重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、重庆小程序开发公司、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了北碚免费建站欢迎大家使用!
#include "stdio.h"
main()
{
int sum=1,i;
for(i=0;i9;i++)
sum=(sum+1)*2;
printf("猴子共摘了%d个桃子。\n",sum);
}
1、首先在电脑中打开vc6.0,新建一个项目,添加头文件,如下图所示。
2、接着添加main主函数,如下图所示。
3、然后定义day、x1、x2,如下图所示。
4、接着初始day、x2,然后使用while循环。
5、最后使用printf打印,运行程序看看结果,猴子吃桃问题就完成了。
#include stdio.h
#include stdlib.h
int main()
{
int i,n=1;
for(i=0;i9;i++)
{
n=2*(n+1);//其实就是一个循环,找到规律后执行9次即可
}
printf("猴子最初有%d个桃子",n);
return 0;
}
如果你再多点在猴子偷桃上的解释,我才能把这个程序的功能,根据情况告诉你。
我有一个我做的猴子偷桃程序 希望对你有帮助
int monkey(int n,int num)//n为猴子数,num为桃子数
{
if(n==0) //如果猴子数为0调用结束
return 0;
if(num%5-1==0)//如果桃子数满足条件 桃子数分为5份
num/=5;
else return 1; //否则 跳出函数
n--; //猴子数-1
monkey(n,num);//若没有跳出函数 则继续调用
}
int main(void)
{
int i=5;
while(1)
{
if(monkey(5,i)==0)
{
printf("%d\n",i);
break;
}
i++;
}
return 0;
}
/*猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。*/
/*第二天又将剩下的桃子吃掉一半,又多吃了一个。*/
/*以后每天都吃前一天剩下的一半零一个。*/
/*到第10天在想吃的时候就剩一个桃子了*/
/*问第一天共摘下来多少个桃子?*/
#include stdio.h
#include stdlib.h
#include conio.h
/*第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;
}
运行结果
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File
2、题目:猴子吃桃:猴子第1天摘下若干个桃子,当即吃掉一半多1个桃子,第2天早上又将剩下的桃子吃掉一半多1个,以后每天都吃掉前天一半多1个,到第10天早上只剩下一个桃子,求第1天猴子到底摘子多少个桃子?
3、输入预处理命令和主函数:
#includestdio.h /*输入输出头文件*/
void main() /*空类型:主函数*/
4、定义变量、确定天数和每天桃子的数量:
int a,b=1; /*定义变量的数据类型为整型*/
for(a=1;a=9;a++) /*确定天数*/
b=(b+1)*2; /*计算从第10天到第1天每天桃子的数量*/
5、输出第1天桃子的数量:
printf("第一天摘了%d个桃子\n",b); /*输出第1天桃子的数量*/
6、完整的源代码:
/* 猴子吃桃
猴子第1天摘下若干个桃子,当即吃掉一半多1个桃子,第2天早上又将剩下的桃子吃掉一半多1个,以后每天都吃掉前天一半多1个,到第10天早上只剩下一个桃子,求第1天猴子到底摘子多少个桃子?*/
#includestdio.h /*输入输出头文件*/
void main() /*空类型:主函数*/
{
int a,b=1; /*定义变量的数据类型为整型*/
for(a=1;a=9;a++) /*确定天数*/
b=(b+1)*2; /*计算从第10天到第1天每天桃子的数量*/
printf("第一天摘了%d个桃子\n",b); /*输出第1天桃子的数量*/
}