• 递归练习:猴子吃桃问题


    /*===================================
    小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个.
    第二天早上又将剩下的桃子吃一半,又多吃一个.
    以后每天早上吃前一天剩下的一半另一个.
    到第10天早上猴子想再吃时发现,只剩下一个桃子了.
    问第一天猴子共摘多少个桃子?
    ====================================*/
     1 #include<iostream>
     2 using namespace std;
     3 int fun(int n);//表示第n天吃之前原来有的数量 
     4 int main()
     5 {
     6     cout<<fun(1);
     7     return 0;
     8 }
     9 int fun(int n)//表示第n天吃之前原来有的数量 
    10 {
    11     if(n==10)
    12     {
    13         return 1;
    14     }
    15     else
    16     {
    17         return (fun(n+1)+1)*2;
    18     }
    19 }
    View Code

    递归函数这个东西呢最重要的是把函数的代入参数时表达的含义意义想清楚。

    此外,要明确递归函数是否需要返回值。如果需要返回值,返回值的含义是什么也要确定下来。

  • 相关阅读:
    python中的面向对象编程
    python global vs nonlocal (2)
    python3 nonlocal vs global
    poj蚂蚁问题
    C/C++ static vs global
    砝码问题
    Wythoff's game
    C++中的::operator new, ::operator delete
    客户信息表 自我汇总 待确认
    Oracle Savepoint
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/3580874.html
Copyright © 2020-2023  润新知