实现1到100数字的累加
⽅法递归调⽤(java)
递归调⽤是迈向数据结构开发的第⼀步,但是如果想真正的掌握熟练递归操作,那么需要⼤量的代码积累。从另⼀个⾓度来说,在应⽤层项
⽬开发上⼀般很少出现递归操作,因为⼀旦处理不当则会导致内存溢出问题的出现。
1.实现1到100数字的累加
publicclassjavademo02{
publicstaticvoidmain(String[]args){
n(sum(100));//1到100累加
}
//递归,数据累加操作,传输⼀个数据累加操作的最⼤值,⽽后每次进⾏数据的递减,将⼀直累加到计算数据为1
publicstaticintsum(intnum){
if(num==1){
return1;
}
returnnum+sum(num-1);//递归调⽤
}
}
//程序执⾏结果:5050
最终效果就相当于:return100+99+98+97+···+2+1(if结束条件)
2.计算1!+2!+3!+···+10!
publicclassjavademo03{
publicstaticvoidmain(Stringargs[]){
n(sum(10));//实现阶乘操作
}
publicstaticdoublesum(intnum){//递归结束条件
if(num==1){//返回1的阶乘
returnfactorial(1);
}
returnfactorial(num)+sum(num-1);//保存阶乘结果
}
publicstaticdoublefactorial(intnum){
if(num==1){//定义阶乘结束条件
return1;//返回1*1的结果
}
returnnum*factorial(num-1);//递归调⽤
}
}
//程序执⾏结果为:4037913.0
本程序实现了指定数据范围阶乘的计算,由于阶乘的数值较⼤,所以只计算到10!。
本文发布于:2022-11-14 20:22:11,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/19793.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |