递归地将num除以(num / 10)

时间:2017-12-07 11:14:54

标签: recursion

我正在尝试编写一个函数,用递归方式将数字除以数十 例如:给定数字555,函数将返回 2
555/55/5 = 2

以下代码输出 11
555 /(55/5)= 50

function recursion(num){
    return num < 10 ? num : Math.floor(num / recursion(Math.floor(num / 10)));
}

console.log(recursion(555));

如何按常规方式递归编程所需的功能?

2 个答案:

答案 0 :(得分:1)

试试这个。

function int recursion(int num) {

    var count = 0;
    var remainder = num/10;

    if remainder > 0 {

        count = recursion(remainder);
        count += 1;
    }

    return count;
}

recursion(5555);

答案 1 :(得分:0)

我使用递归乘法函数解决了它,如下所示:

function divideByTens(num){
    return Math.floor(num / recursionM(Math.floor(num / 10)));
}

function recursionM(num){
    if(num < 10)
        return num;

    return num * recursionM(Math.floor(num / 10));
}

console.log(divideByTens(555));