黑马程序员技术交流社区
标题:
猴子吃桃问题
[打印本页]
作者:
吃饭工作睡觉
时间:
2015-11-3 09:05
标题:
猴子吃桃问题
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第
10
天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
希望程序的逻辑关系写清楚,谢谢!
作者:
洛克先生EN
时间:
2015-11-3 09:05
public static void main(String[] args) {
//倒推,最后也就是第10天剩一个
int n=1;
//从9天到第1天是同样的模式,所以用循环。
for (int i = 9; i >= 1; i--) {
//每天早上都吃了前一天剩下的一半零一个
//比如 第二天的个数=(第一天的个数/2)-1,也就是 第一天的个数=(第二天的个数+1)*2
//循环昨天=(今天*2)*1
n=(n*2)+1;
}
//从9天到第1天循环完毕,即得到第1天的桃子个数
System.out.println(n);
}
作者:
rookiefly
时间:
2015-11-3 09:39
public class test
{
public static void main(String[] args)
{
int sum=1,i;
for(i=0;i<9;i++){
sum=(sum+1)*2;
}
System.out.println("第一天共摘了 "+sum+" 个桃子.");
}
}
复制代码
作者:
xingjiyuan26
时间:
2015-11-3 11:39
注释很详细吧,不懂的话继续问哦
public class Test {
public static void main(String[] args) {
//倒推,最后也就是第10天剩一个
int n=1;
//从9天到第1天是同样的模式,所以用循环。
for (int i = 9; i >= 1; i--) {
//每天早上都吃了前一天剩下的一半零一个
//比如 第二天的个数=(第一天的个数/2)-1,也就是 第一天的个数=(第二天的个数+1)*2
//循环昨天=(今天+1)*2
n=(n+1)*2;
}
//从9天到第1天循环完毕,即得到第1天的桃子个数
System.out.println(n);
}
}
复制代码
作者:
大自然的搬运工
时间:
2015-11-3 20:10
俩人的程序完全一样,哈哈
作者:
菊花爆满山
时间:
2015-11-3 23:11
2楼的写的很详细了 想起了以前刚学C的时候也写过这题 好遥远了
作者:
秋色潇湘
时间:
2015-11-3 23:42
/*
题意分析。
吃一半桃子,然后再吃一个,一共吃了9次,最后剩一个桃子。
逆序求值 x = (x+1)*2; 执行9次之后,可得到最初的桃子数
*/
class PeachProblem {
public static void main(String[] args) {
int num = 1;
for (int i = 0; i < 9 ; i++ ) {
num = (num + 1)*2;
}
System.out.println("第一天摘的桃子数为"+num); //最后的结果为1534,话说这猴子第一天吃了767+1,这猴子是孙悟空吧。。
}
}
复制代码
作者:
478883662
时间:
2015-11-4 09:14
顶写代码了几位层主。。。
作者:
poxiao
时间:
2015-11-4 20:46
最后一天剩1个,则设第九天没吃之前的桃子数为x,则x - (1/2x + 1) = 1 =>x = 4,再推第八天,设第八天的桃子数为x,则x - (1/2x + 1) = 4 =>x = 10,...以此类推可得出前一天的桃子数是后一天桃子数加1再乘以2,所以函数应为:
void countPeach()
{
int count = 1;//第10天的桃子数
int i = 9, j = 0;
for (i; i > 0; i--) // 已知第10天为1个,所以计算剩下9天的桃子数
{
count = (count + 1) * 2;
}
printf ("The number of peach is: %d \n", count);
}
作者:
雨来
时间:
2015-11-5 00:15
学习了不错
作者:
吃饭工作睡觉
时间:
2015-11-5 08:44
xingjiyuan26 发表于 2015-11-3 11:39
注释很详细吧,不懂的话继续问哦
谢谢你的解答!很受用!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2