函数;猴子吃桃函数算法

author author     2022-08-06     217

关键词:

公园里有一些桃子,猴子每天吃掉一半,扔掉一个烂的,第6天的时候发现剩余1个,问一开始有多少个桃子
1、var sy=1;
for(i=0;i<6;i++)
{
sy=(sy+1)*2;
}
2.递归算法:

function ShuLiang(n)
{
  if(n==6)
    {
      return 1;
    }
  var sl = (ShuLiang(n+1)+1)*2;//第n天的数量=(下一天的桃子数量+1)*2;
  return sl;//第n天的数量;
}
alert(ShuLiang(0));

//第一次调
function ShuLiang(0)
  {
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(1)
    return sl;
  }
//第二次调
function ShuLiang(1)
{
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(2)
    return sl;
}
//第三次调
function ShuLiang(2)
{
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(3)
    return sl;
}
//第四次调
function ShuLiang(3)
{
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(4)
    return sl;
}
//第五次调
function ShuLiang(4)
{
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(5)
    return sl;
}
//第六次调
function ShuLiang(5)
{
    var sl = (ShuLiang(n+1)+1)*2;//卡住,去调ShuLiang(6)
    return sl;
}
//第七次调
function ShuLiang(6)
{
  if(n==6)
    {
      return 1;
    }
}
alert(ShuLiang(0));
第七次的值 sl=1;返回第六次 (ShuLiang(n+1)+1)*2=(1+1)*2;返回第五次 (4+1)*2;
返回第四次 (10+1)*2; 返回第三次 (22+1)*2;返回第二次 (46+1)*2;返回第一次(94+1)*2
alert(ShuLiang(0));
顺序:0-1-2-3-4-5-6---6-5-4-3-2-1-0

c语言试题六十五之请编写函数实现猴子吃桃问题

1、题目猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时... 查看详情

用递归函数解决猴子吃桃桃问题。问题描述如下

...分析问题,找出每天剩下的桃子数和前一天剩下桃子数的函数关系。如果设第n天剩下的桃子数为f(1),则n天前的桃子数就应该为f(n)(f为函数名)。在递归时,将第n天剩下的桃子数作为递归结束的条件。依据题意f(n-1)=f(n)/2-1... 查看详情

java经典算法题——猴子吃桃

一个猴子摘了一堆桃子,第一天吃了桃子的一半后又吃了一个,第二天也吃了剩下的桃子的一半后又吃了一个,以此吃下去,到了第十天还剩下一个桃子,问当初猴子总摘了多少个桃子?提示:倒推计算publicclassMonkeypublicstaticvoid... 查看详情

猴子吃桃问题

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

c语言递归问题猴子吃桃

...个递归式里面的m值始终为1而没有递增?你不应该在被调函数中定义m=1不然当你反复调用被调函数是m都会被重新赋值。我的程序:#include<stdio.h>intsb(int,int);intmain() intn; scanf("%d",&n); printf("Themonkeygot%dpeachsinfirstday.\... 查看详情

c语言用递归算法来解决猴子吃桃问题。:一天一只猴子摘下一堆桃子,吃了一半,觉得不过瘾,又多吃了一

C语言用递归算法来解决猴子吃桃问题。:一天一只猴子摘下一堆桃子,吃了一半,觉得不过瘾,又多吃了一个,第2天接着吃了前一天剩下的一半,再多吃了一个,以后每天如此,直到第n天,只剩下1个桃子,问猴子一共摘了多... 查看详情

猴子吃桃问题

package second; /*  * 猴子吃桃问题:  * 猴子第一天摘了若干桃子,吃了一半又一个,第二天又吃了剩下的一半零一个,如此循环,等到第10天,发现只剩下一颗桃子,问第一天摘了多少桃子  */&n... 查看详情

猴子吃桃问题。

题目描述猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。到第N天早上想再吃时,见只... 查看详情

猴子吃桃问题

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

2-1-7217:猴子吃桃

描述    海滩上有一堆桃子,N只猴子来分。第一只猴子把这堆桃子平均分为N份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子接着把剩下的桃子平均分成N份,又多了一个,它同样把多的一个... 查看详情

猴子吃桃问题(代码片段)

packagecom.my.demo;publicclassTest3publicstaticvoidmain(String[]args)inta=1;for(inti=0;i<9;i++)a=(a+1)*2;System.out.println(a);  查看详情

猴子吃桃(递归)

递归案例实践分析递归案例实践分析本文来自博客园,作者:Haziy,转载请注明原文链接:https://www.cnblogs.com/zhangyouren/p/16460002.html本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。博主的文章没有高度、深度... 查看详情

猴子吃桃(代码片段)

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾就多吃了一个。第二天早上又将剩下的桃子吃了一半,还是不过瘾又多吃了一个。以后每天都吃前一天剩下的一半再加一个。到第10天刚好剩一个。问猴子第一天摘了多少个... 查看详情

05简单推导:猴子吃桃

【题目】 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾, 又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。 以后每天早上都吃了前一天剩下的一半零一个。 到第10天早上想再吃时,... 查看详情

c语言博客作业--函数嵌套调用

...作业1.1PTA题目:递归实现顺序输出整数1.1.1设计思路定义函数printdigits,形参为n接收数字判断n/10是否不等于0如果是则递归调用函数printdigits(n/10)输出当前n的最后一位并换行1.1.2代码截图1.1.3调试问题本题比较简单,思路清晰,一... 查看详情

循环-16.猴子吃桃问题(15)

一仅仅猴子第一天摘下若干个桃子,当即吃了一半,还只是瘾。又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第N天早上想再吃时,见仅仅剩下一个桃子... 查看详情

pta7-4猴子吃桃问题(15分)(代码片段)

#include<stdio.h>intmain()inta,b=1;scanf("%d",&a);while(--a)b=(b+1)*2;printf("%d",b);return0; 查看详情

c语言猴子吃桃递归法

一个猴子摘了一些桃子,它每天吃了其中的一半然后再多吃了一个,直到第10天,它发现只有1个桃子了,问它第一天摘了多少个桃子?猴子分N天吃完了桃子,要想求出第1天的桃子数,就先要求出第2天的桃子数,.......因此,有:a1=(a2+1)*2;a2=(a3+... 查看详情