高手请进!这是一道PHP编程题目
请用递归的方法写出这道PHP编程题目,急急急...题目是这样的:有一个猴子,走过河去到一个桃树上吃桃子,每一次吃的桃子数是前一次吃的一半加一个,一共吃了7天,问桃子有多少...
请用递归的方法写出这道PHP编程题目,急急急...
题目是这样的:有一个猴子,走过河去到一个桃树上吃桃子,每一次吃的桃子数是前一次吃的一半加一个,一共吃了7天,问桃子有多少个??
老头是这样说的,一只猴子用7天吃掉1堆桃子,每天吃一次,每天吃的是前一天的一半多一个..用PHP递归方法做出来,我想破头都想不出来的.... 展开
题目是这样的:有一个猴子,走过河去到一个桃树上吃桃子,每一次吃的桃子数是前一次吃的一半加一个,一共吃了7天,问桃子有多少个??
老头是这样说的,一只猴子用7天吃掉1堆桃子,每天吃一次,每天吃的是前一天的一半多一个..用PHP递归方法做出来,我想破头都想不出来的.... 展开
4个回答
展开全部
/***
* @param int $i 传入吃桃子的天数
* @return $i天内吃的桃子的共个数
*/
function CountT($i){
if($i == 1){
return 1;//迭代的中止条件是$i=1的时候,也就是只吃一天的时候总共吃的桃子个数是1个
}
//这个返回前$i天吃的桃子数才用迭代,每次迭代天数减一直到为1
//计算方式:今天吃的桃子的个数是昨天吃的桃子的个数的一般加一个,再 加上昨天吃的桃子的总数得到到今天为止共////吃桃子的个数
$Total = (CountT($i-1))/2 +1 +CountT($i-1);
return $Total;
}
* @param int $i 传入吃桃子的天数
* @return $i天内吃的桃子的共个数
*/
function CountT($i){
if($i == 1){
return 1;//迭代的中止条件是$i=1的时候,也就是只吃一天的时候总共吃的桃子个数是1个
}
//这个返回前$i天吃的桃子数才用迭代,每次迭代天数减一直到为1
//计算方式:今天吃的桃子的个数是昨天吃的桃子的个数的一般加一个,再 加上昨天吃的桃子的总数得到到今天为止共////吃桃子的个数
$Total = (CountT($i-1))/2 +1 +CountT($i-1);
return $Total;
}
展开全部
……
多久吃一个都没说
一天吃一个还是一天吃1000个?也许7天只吃了一个呢?
这道题目缺条件。
多久吃一个都没说
一天吃一个还是一天吃1000个?也许7天只吃了一个呢?
这道题目缺条件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
额、这道题并不是考你算法。他要看你思想是否十分局限,你可以跟他讨论的形式来,比如吃的时间呀。过河时间呀。等等 呵呵
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询