例题:函数递归。去卖羊,每过一个村子卖掉之前数的二分之一零一只,过了7个村之后还剩2只,问最初有多少羊。

public int qiuyang(int cun)
        {
            int sum = 0;
            if (cun==7)//如果是第七个村就剩2只,那么函数结束
            {
                sum = 2;
                return sum;
            }
            sum = (qiuyang(cun + 1) + 1) * 2;  //(下一个村数量+1)*2;
            //这一个村的数量是下一个村的数量加一个然后乘以2,
            //qiuyang这个函数被调用,就知道上个村的羊的数量
            //(qiuyang(cun + 1)这个函数被调用,cun+1.是指下个村子
            return sum;
        }
        static void Main(string[] args)
        {
            int sum = new Program().qiuyang(1);
               
            Console.WriteLine(sum);
            Console.ReadLine();

时间: 2024-10-15 22:04:37

例题:函数递归。去卖羊,每过一个村子卖掉之前数的二分之一零一只,过了7个村之后还剩2只,问最初有多少羊。的相关文章

函数+递归例题

日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b.getMonth()+1; //获取月份b.getDate() //获取天b.getHours() //获取小时b.getMinutes() //获取分钟b.getSeconds() //获取秒数b.getDay() //获取星期几b.getMilliseconds() //获取毫秒 数学函数(用Math来调用):abs(x

例题:用函数递归求数字n 的阶乘

class Program { // 要理解递归,先要理解递归. (这只是一句玩笑话 ) // 递归,顾名思义就是递来归去,如此反复,直到不符合某个条件. 而函数递归意思也就是函数调用函数自己. 下面用代码来示例: public int jiecheng(int n) { // 用这个函数实现阶乘 , n表示阶乘的次数 if (n <= 1) return 1; else n= n *jiecheng (n - 1); return n; } static void Main(string[]

【Python 生成器 匿名函数 递归 模块及包的导入 正则re】

一.生成器 1.定义 生成器(generator)是一个特殊的迭代器,它的实现更简单优雅,yield是生成器实现__next__()方法的关键.它作为生成器执行的暂停恢复点,可以对yield表达式进行赋值,也可以将yield表达式的值返回. 也就是说,yield是一个语法糖,内部实现支持了迭代器协议,同时yield内部是一个状态机,维护着挂起和继续的状态. yield的功能: 1.相当于为函数封装好__iter__和__next__ 2.return只能返回一次值,函数就终止了,而yield能返

高阶函数-递归

1.高阶函数 1.1高阶函数定义 变量可以指向函数,函数的参数能接受变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称为高阶函数.只要满足以下任意一个条件,即是高阶函数1.接收一个或多个函数作为输入2.return返回另外一个函数 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author: vita def add(x, y, func): return func(x) + func(y) res = add(3, -6, abs) p

07-08 函数递归

[TOC] 一 函数递归调用介绍 函数不仅可以嵌套定义,还可以嵌套调用,即在调用一个函数的过程中,函数内部又调用另一个函数,而函数的递归调用指的是在调用一个函数的过程中又直接或间接地调用该函数本身 插图:恶搞图58 例如 在调用f1的过程中,又调用f1,这就是直接调用函数f1本身 def f1(): print('from f1') f1() f1() 配图:递归调用1 在调用f1的过程中,又调用f2,而在调用f2的过程中又调用f1,这就是间接调用函数f1本身 def f1(): print('

函数递归

函数递归就是一个函数引用另一个函数.def func (n): n+=1 if n>=8: return "and" return func(n)n=func(1)print(n)def a(): print(123)def b (): r=a() return rdef c (): r=b() return rc()

iOS函数,函数递归

#import <Foundation/Foundation.h> #import "Function.h" int main(int argc, const char * argv[]) { //函数定义 /*返回值类型 函数名(参数1, 参数2, 参数3, 参数4) { 函数体; return 返回值; } */ //函数四种基本类型: //无参无返回值 //实参 到形参的过程是一个拷贝的过程 //函数的值,要哟过对应的数据类型进行接收 //c语言允许函数嵌套调用,不允

兔子生兔子函数递归

namespace 兔子生兔子函数递归{    class Program    {        static void Main(string[] args)        {            Console.WriteLine("请输入你想知道兔子哪个月的数量:");            int m = Convert.ToInt32(Console.ReadLine());            int sum = new Program().tuzi(m);  //定

js函数递归

//公园里有200个桃子.猴子每天吃掉10个,挑出两个坏的扔掉,问6天后剩余桃子的数量 /*var sl = 200; for(var i=0;i<6;i++){ sl = sl-12;} alert(sl);*/ //公园里有一堆桃子,猴子每天吃掉一半,挑出一个坏的扔掉,第6天的时候发现还剩1个桃子,问原来有多少个桃子 /*var sl = 1; //前一天的数量 = (当前天的数量+1)*2; for(var i=0;i<6;i++){ sl = (sl+1)*2;} alert(sl);