为了账号安全,请及时绑定邮箱和手机立即绑定

求代码谢谢各位大神,怎样用递归求阶乘,?

求代码谢谢各位大神,怎样用递归求阶乘,?

明月笑刀无情 2019-04-18 14:15:14
编写递归方法计算算式3^0+3^1+3^2+3^3+…+3^n 的值。
查看完整描述

6 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

public static void main(String[] args) {
    int i = Java_Amen.mi(2);
    System.out.println(i);
}

static double xnum(int num) {
    return Math.pow(3, num);
}

static int mi(int num) {
    if (num == 0) {
        return 1;
    } else {
        return (int) (Java_Amen.xnum(num) + Java_Amen.xnum(num - 1));
    }
}


查看完整回答
反对 回复 2019-05-16
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

不想直接告诉你答案,就想告诉你阶乘的来源——数学归纳法,你应该去看看怎么用数学归纳法推出阶乘。


查看完整回答
反对 回复 2019-05-16
?
达令说

TA贡献1821条经验 获得超6个赞

public int num(int n){
if(x == 1){
return x;
}else{
return x * num(x-1);
}
}
我的是对的 楼上少个东西

查看完整回答
反对 回复 2019-05-16
?
繁星coding

TA贡献1797条经验 获得超4个赞

int num = 0;
public void num(int n){
num += 3*n;
if((n -1) <0){
syso(num);
}else{
num(n-1);
}
}

查看完整回答
反对 回复 2019-05-16
?
GCT1015

TA贡献1827条经验 获得超4个赞

int fun(int n)
{
if (n == 0) return 1;
return pow(3, n) + fun(n-1);
}
这里我是用c语言写的,但是思想相同,pow是计算数字的n次方的,Java中应该也有相应的函数,希望能帮到你

查看完整回答
反对 回复 2019-05-16
?
函数式编程

TA贡献1807条经验 获得超9个赞

js也同理
function pow(n,m){var temp=1;for(var i=0;i<m;i++){temp*=n;}return temp;}
function f(n,m){if(m==0){return 1;}return pow(n,m)+f(n,m-1);}
f(3,10);

查看完整回答
反对 回复 2019-05-16
  • 6 回答
  • 0 关注
  • 547 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信