练习_使用递归计算1-n之间的和-练习_使用递归计算阶乘
练习_使用递归计算1-n之间的和
定义一个方法,使用递归计算1-n之间的和
1+2+3+. . .+n
n+(n-1)+(n-2)+...+1
已知:
最大值:n
最小值:1
使用递归必须明确:
1.递归的结束条件获取到1的时候结束
2.递归的目的
获取下一个被加的数字(n-1)
package Demo01.File;
public class Demo02Recurison {
public static void main(String[] args) {
int s = sum(100);
System.out.println(s);
}
/*
定义一个方法,使用递归计算1-n之间的和1+2+3+. . .+n
n+(n-1)+(n-2)+...+1已知:
最大值:n最小值:1
使用递归必须明确:
1.递归的结束条件
获取到1的时候结束2.递归的目的
获取下一个被加的数字(n-1)
*/
public static int sum(int n) {
//获取到1的时候结束
if (n==1){
return 1;
}
//获取下一个被加的数字(n-1)
return n+ sum(n-1);
}
}

练习_使用递归计算阶乘
阶乘:所有小于及等于该数的正整数的积

分析︰这与累和类似,只不过换成了乘法运算,学员可以自己练习,需要注意阶乘值符合int类型的范围

代码实现
package Demo01.Recursion;
public class Demo03Recurison {
public static void main(String[] args) {
int jc = jc(5);
System.out.println(jc);
}
/*
定义方法使用递归计算阶乘
5的阶乘:5! = 5*(5-1)* (5-2)*(5-3)*(5-4)=5*4*3*2*1递归结束的条件
获取到1的时候结束递归的目的
获取下一个被乘的数字(n-1)
*/
public static int jc(int n){
//获取到1的时候结束
if (n==1){
return 1;
}
//获取下一个被乘的数字(n-1)
return n * jc(n-1);
}
}

练习_使用递归计算1-n之间的和-练习_使用递归计算阶乘的更多相关文章
- (1)若当前字符不是大于0的数字字符,则复制该字符于新字符串中; (2)若当前字符是一个数字字符,且它之后没有后继字符,则简单地将它复制到新字符串中; (3)若当前字符是一个大于0的数字字符,并且还有后继字符,设该数字字符的面值为n,将它的后继字符重复复制n+1次到新字符串中; (4)以上述一次变换为一组,在不同组之间另插入一个"_"用于分割(5))若字符串中包含有下划线'_',则变换为 \UL
package b; import java.util.Scanner; public class Zifuchuan { public static void main(String[] args) ...
- 接口测试基础——第7篇 Python中_、__、__func__之间的区别
今天的东西很少,主要是给自己做个笔记,顺便帮大家普及一下Python中的边角知识: 1.if __name__ == "__main__"是什么意思 答:一个.py文件,如果是自身 ...
- Python笔记【5】_字符串&列表&元组&字典之间转换学习
#!/usr/bin/env/python #-*-coding:utf-8-*- #Author:LingChongShi #查看源码Ctrl+左键 #数据类型之间的转换 Str='www.baid ...
- python _、__、__xx__之间的差别
默认情况下,Python中的成员函数和成员变量都是公开的(public),在python中没有类public,private等关键词来修饰成员函数和成员变量.其实,Python并没有真正的私有化支持, ...
- 【python】python _、__、__xx__之间的差别
本文来自 yzl11 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/yzl11/article/details/53792416?utm_source=copy 单下 ...
- 使用递归计算1~n之间所有整数的和
5+getSum(4) 5+4+getSum(3) 5+4+3+getSum(2) 5+4+3+2+getSum(1) 5+4+3+2+1 function getSum(n){ if(n===1){ ...
- pygame系列_原创百度随心听音乐播放器_完整版
程序名:PyMusic 解释:pygame+music 之前发布了自己写的小程序:百度随心听音乐播放器的一些效果图 你可以去到这里再次看看效果: pygame系列_百度随心听_完美的UI设计 这个程序 ...
- 10_Java面向对象_第10天(继承、抽象类)_讲义
今日内容介绍 1.继承 2.抽象类 3.综合案例---员工类系列定义 01继承的概述 *A:继承的概念 *a:继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系 *b:在Jav ...
- 09_Java面向对象_第9天(类、封装)_讲义
今日内容介绍 1.面向对象思想 2.类与对象的关系 3.局部变量和成员变量的关系 4.封装思想 5.private,this关键字 6.随机点名器 01面向对象和面向过程的思想 A: 面向过程与面向对 ...
随机推荐
- 死磕面试系列,Java到底是值传递还是引用传递?
Java到底是值传递还是引用传递? 这虽然是一个老生常谈的问题,但是对于没有深入研究过这块,或者Java基础不牢的同学,还是很难回答得让人满意. 可能很多同学能够很轻松的背出JVM.分布式事务.高并发 ...
- .Net Core 3.0 对 MongoDB 的多条件(两种)查询操作
前言 在日常开发中,偶尔会用到 MongoDB 的数据操作,也花费了一些时间调试,因此在此处记录一下,共同进步. 废话少说,出招吧! 正文 2.1 准备工作 首先需要引入 .Net 平台链接 Mo ...
- Vue2基础知识学习
Vue2基础知识学习 01.初识 new Vue({ el: '#root', //用于指定当前Vue实例为哪个容器服务,值通常为css选择器符 data () { return { } } }); ...
- MASA Framework -- EventBus入门与设计
概述 事件总线是一种事件发布/订阅结构,通过发布订阅模式可以解耦不同架构层级,同样它也可以来解决业务之间的耦合,它有以下优点 松耦合 横切关注点 可测试性 事件驱动 发布订阅模式 通过下图我们可以快速 ...
- 基于python的数学建模---分支定界算法
zip函数 a = [1,2,3,4]b = [5,6,7,8]i = sum(x * y for x, y in zip(a, b))print(i)70 floor and ceil 函数 imp ...
- vue 3.0 常用api 的简介
vue3.0 生命周期 写法一 和vue2.x 一致 区别在于(beforeUnmount.unmount)名称不一样 写法二 在setup 中使用, 需要引用 如: import { onBefor ...
- sqlserver数据库还原
这里是从A服务器备份的数据库文件,还原到本地B电脑的数据库.因数据库版本相同,故而未曾出现其他版本问题 1.有个bak的备份文件 2.在B电脑新建一个数据库test. 3.设置test数据库的访问限制 ...
- AR手势识别交互,让应用更加“得心应手”
现如今, AR技术不断发展,人们不再满足于运用键盘.鼠标等简单器械来实现传统的人机交互模式.随着用户接触机器的多样化,繁琐的操作不但对一些用户有门槛,而且还增加其学习成本:如果能用自然且符合日常生活习 ...
- Easy-Classification-验证码识别
1.背景 Easy-Classification是一个应用于分类任务的深度学习框架,它集成了众多成熟的分类神经网络模型,可帮助使用者简单快速的构建分类训练任务. 案例源代码 Easy-Classi ...
- 用excel表画一个乐高
一.背景:在商场看到一个超级玛丽的乐高图感觉使用excel的颜色填充也能画出来,并且可以借助python来实现 二.excel表如何绘制正方形:1.统一设置行高与列宽excel表单元格的行与列的默认计 ...