C# 递归算羊

public int ganyang(int cun)
{
  if (cun == 7)
  {
    return 2;
  }

  int sum = (ganyang(cun + 1) + 1) * 2;

  return sum;
}

Console.WriteLine(new Program().ganyang(0));

时间: 2024-08-09 21:30:00

C# 递归算羊的相关文章

函数递归——赶羊

namespace 赶羊递归     {    class Program    {        public int jisuan(int day)   //创建一个函数,输入day计算出羊的总数        {                 int sum=0;                  if(day==7)                {                    sum = 2;                    return sum;  //一定要加re

判断排序二叉树的后序遍历是否正确(对递归算的总结)

是 #include <iostream> using namespace std; //排序二叉树的性质 /* *.终止条件:1.开始>=结尾返回真 *. 2.s >= e 因为不出现问题的话,一定能到达 s>=e的情况.知道到达了s >= e即为真 *. 1.最后一个节点是root 2.在root之前的节点 连续的大于root的是其右子树, 再之前连续小于root的是其左子树 3.递归调用 */ bool treehelper(int a[], int s, int

HDU_oj_2042 老汉算羊

Problem Description 你活的不容易,我活的不容易,他活的也不容易. 徐老汉没钱,收费员就将他的羊拿走一半,看到老汉泪水涟涟,犹豫了一下,又还给老汉一只.巧合的是,后面每过一个收费站,都是拿走当时羊的一半,然后退还一只,等到老汉到达市场,就只剩下3只羊了.老汉最初有多少只羊? Input 输入数据第一行是一个整数N,下面由N行组成,每行包含一个整数a(0<a<=30),表示收费站的数量. Output 对于每个测试实例,请输出最初的羊的数量,每个测试实例的输出占一行. Samp

北京大学 程序设计与算法(二) 递归 算24

算24 给出4个小于10个正整数,你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式.现在的问题是,是否存在一种方式使得得到得表达式得结果等于24. 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致. 输入 输入数据包括多行,每行给出一组测试数据,包括4个小于10个正整数.最后一组测试数据种包括4个0,表示输入的结束,这组数据不用处理. 输出 对于每一组测试数据,输出一行,如果可以得到24,输出“YES”:否则,输出”no”. 思路: n个数算24,必有两个数先算

a0=1、a1=1、a2=a1+a0、a3=a2+a1,以此类推,请写代码用递归算出a30?

public class Test { public static void main(String[] args) { System.out.println(recursive(30)); } public static int recursive(int i){ // int a0=1; // int a1=1; // int a2=a1+a0; // int a3=a2+a1; if (i==0||i==1) return 1; return recursive(--i)+recursiv

函数的递归

一.概念conception: 函数体内调用本函数自身,直到符合某一条件不再继续调用. 二.应满足条件factor: (1)有反复执行的过程(调用自身): (2)有跳出反复执行过程的条件(函数出口) 三.注意事项notice: 1.递归中必须要存在一个循环结束的条件. 2.递归函数的每次调用都需要栈来存储,如果次数太多的话容易造成栈溢出. 例题//一群羊赶到各村庄去卖,每过一个村丢失之前总数的1/2零1只,过了7个村庄之后还剩两只,问最初赶出多少羊 class hanshu { public i

闲来无事做,把最近碰到的一些小面试题整理一下,单例模式,冒泡排序,递归

1.单例模式 /// <summary> /// 单例模式 /// </summary> /// <typeparam name="T"></typeparam> public class Singleton<T> where T:new () { public static T Instance { get { return SingletonCreator.instance; } } public class Single

黑马程序员----java基础---递归概述、递归和循环的区别

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.递归函数,通俗的说就是函数本身自己调用自己... 如:n!=n(n-1)! 你定义函数f(n)=nf(n-1) 而f(n-1)又是这个定义的函数..这就是递归 定义:程序调用自身的编程技巧称为递归( recursion). 递归做为一种算法在程序设计语言中广泛应用. 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小

Chapter 7. 递归

一.概念 conception 函数体内调用本函数自身,直到符合某一条件不再继续调用. 二.应满足条件 factor 1.有反复执行的过程(调用自身): 2.有跳出反复执行过程的条件(函数出口): 三.例子 example /// <summary> /// 计算阶乘:n!=n*(n-1)*(n-2)*(n-3)*......*1(n>0) /// </summary> /// <param name="i"></param> //