猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又多吃了一个。第二天又将剩下的桃子吃掉一半,又多吃了一个。以后每天都吃前一天剩下的一半零一个。到第10天在想吃的时候就剩一个桃子了,问第一天共摘下来多少个桃子?并反向打印每天所剩桃子数。

来源:5-8 递归函数(二)

慕粉4001126

2016-10-26 16:42

 num = (getPeachNumber(n+1)+1)*2;

写回答 关注

3回答

  • 慕工程1046733
    2018-03-17 13:57:13

    def f(n):
       if  n == 1:
           return 1
       else:
           return ((f(n-1)+1)*2)

    num = f(10)
    print(num)

    1534个

  • 越飞越高
    2016-11-21 12:55:55

    n+1是天数

    再加1是多吃的桃子数

    乘以2是后面一天吃桃子是前一天的一半

  • 宝慕林0690142
    2016-10-26 19:09:15

    #include<stdio.h>

    int getpeach(int day)

    {

    int Peachnumber;

        if(day==10)

           {

      return 1;

      }

      else

      {

      Peachnumber=(getpeach(day+1)+1)*2;

      printf("第%d天还有%d桃\n",day,Peachnumber);

      } 

      return Peachnumber;

      

        

    }

    int main()

    {

    int num=getpeach(1);

    printf("第一天摘了%d个桃",num);

    return(0);

    }


C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926021 学习 · 20793 问题

查看课程

相似问题