递归例题

公园有200个桃子,猴子每天吃掉10个,挑出2个坏的扔掉,问六天后剩余桃子数量

使用循环做的

var taozishuliang = 200;
for( var i=0;i<6;i++)
{
taozishuliang=taozishuliang-12;
}
alert(taozishuliang);

var sl=1
for(var i=0;i<6;i++)
{
sl=(sl+1)*2
}
alert(sl);
公园里有一堆桃子,猴子每天吃掉一半,扔掉一个坏的,第六天发现还剩1个桃子,问原来有多少桃子
使用函数求:函数功能就是返回第n天的桃子数量

var sl;
function Shuliang(n)
{ //第六天还剩1个桃子
if (n==6)
{
sl=1;
}
else
{ //当求天返回的数量
//当天数量=(下一天的数量+1)*2
sl = (Shuliang(n+1)+1)*2;
}
return sl; //返回当天的数量
}
alert(Shuliang(0));
 1 //上面的函数先从第一天函数开始,然后在从第六天往上推算
 2
 3 Shuliang(0) 190
 4 sl=(shuliang(1)+1)*2
 5
 6 Shuliang(1) 94
 7 sl=(shulaing(1+1)+1)*2
 8
 9 Shuliang(2) 46
10 sl=(shulaing(2+1)+1)*2
11
12 Shuliang(3) 22
13 sl=(shulaing(3+1)+1)*2
14
15 Shuliang(4) 10
16 sl=(shulaing(4+1)+1)*2
17
18 Shuliang(5) 4
19 sl=(shulaing(5+1)+1)*2
20
21 Shuliang(6)
22 sl=1
时间: 2024-12-29 06:44:21

递归例题的相关文章

函数+递归例题

日期时间函数(需要用变量调用):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

16 Python 递归例题

递归 1.什么是递归 recursion 递归 - 递归的定义--在一个函数里再调用这个函数本身 在一个函数里再调用这个函数本身,这种魔性的使用函数的方式就叫做递归. 递归的最大深度--997 一个函数在内部调用自己 递归的层数在python里是有限制的 997/998层 2.层数可以修改 sys模块 1 import sys #python限制在997/998 2 sys.setrecursionlimit(10000000) #可以修改 3 COUNT = 0 4 def func(): #

递归例题4.5集合的划分

[题目描述] 设S是一个具有n个元素的集合,S=?a1,a2,……,an?,现将S划分成k个满足下列条件的子集合S1,S2,……,Sk,且满足: 1.Si≠∅ 2.Si∩Sj=∅           (1≤i,j≤k,i≠j) 3.S1∪S2∪S3∪…∪Sk=S 则称S1,S2,……,Sk是集合S的一个划分.它相当于把S集合中的n个元素a1,a2,……,an 放入k个(0<k≤n<30)无标号的盒子中,使得没有一个盒子为空.请你确定n个元素a1,a2,……,an 放入kk个无标号盒子中去的划分

C# Arraylist + struct 综合练习 枚举ENUE 递归

枚举类型 一组常量的组合, 在不制定任何索引的情况下,默认第一个字段从0开始,之后的依次+1 在指定了某个索引的情况下,之后的依次+1 若之前定义的某字段的索引指向了之后的某个默认字段,那么他俩完全相同 不需要初始化 Console.WriteLine(meiju.five); //常量字段 Console.WriteLine((int)meiju.five); //字段代表的值 Console.WriteLine(meiju.one); //常量字段 Console.WriteLine((in

DP&amp;图论 DAY 4 下午图论

DP&图论  DAY 4  下午 后天考试不考二分图,双联通 考拓扑排序 图论 图的基本模型 边: 有向边构成有向图 无向边构成无向图 权值: 1.无权 2.点权 3.边权 4.负权(dij不可以跑) 环: 1. 2.重边 3.有向无环图DAG 路径: 1.简单路径:不经过重复的点  1-->2-->3 不简单路径:经过重复点  1-->2-->3-->1-->4 2.连通,具有传递性 图: 1.树:n个点,n-1条边的无环连通图 2.完全图:一个无向图,图中任

例题:用函数递归求数字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[]

Java中方法递归与File例题

1.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第二十个月的兔子对数为多少?(不死神兔)(1)数组方式 package 递归.作业; public class TuziArray { public static void main(String[] args) { //定义数组 int arr[] = new int[100]; int m=20; arr[1] = 1;//前两个月兔子数量为1只 arr[2] = 1; arr[3

ybt1207 最大公约数问题 递归经典例题

ybt1207 最大公约数问题 递归典例 (选它只是因为太典型,不是因为懒得做难题故意放水) [题目描述] 给定两个正整数,求它们的最大公约数. [输入] 输入一行,包含两个正整数(<1,000,000,000). [输出] 输出一个正整数,即这两个正整数的最大公约数. [输入样例] 6 9 [输出样例] 3 [题解] 求最大公约数明明可以两个数同时试除所有小于等于它们的算术平方根的质数,然后把整除的数累乘,得到结果,但是这种算法不光写起来很麻烦,而且的复杂度是: \[ O(\sqrt{n})

java例题_22 用递归求阶乘 5!

1 /*22 [程序 22 递归求阶乘] 2 题目:利用递归方法求 5!. 3 程序分析:递归公式:fn!=fn*4! 4 */ 5 6 /*分析 7 * 递归:如果其中每一步都要用到前一步或前几步的结果,称为递归的 8 * 根据提示,可以用算法x!=x*(x-1)!;y=x-1,y!=y*(y-1)!;... 9 * 10 * */ 11 12 13 package homework; 14 15 public class _22 { 16 17 public static void main