DEV Community

SILAMBARASAN A
SILAMBARASAN A

Posted on

Number Reversal and Rotation using Recursion

INPUT → 123456
OUTPUT → 654321

PYTHON :

def sum1(no,reverse=0):
    if no>0:
        reverse=reverse*10+no%10
        no=no//10
        return sum1(no,reverse)
    return reverse
print(sum1(123437))

Enter fullscreen mode Exit fullscreen mode

INPUT → 123456

OUTPUT → 563412

no % 100
→ Gets the last 2 digits of the number

reverse * 100
→ Creates space to add new digits at the end

Math.floor(no / 100)
→ Removes the last 2 digits from the number

PYTHON :

def sum1(no,reverse=0):
    if no>0:
        reverse=reverse*100+no%100
        no=no//100
        return sum1(no,reverse)
    return reverse
print(sum1(123456))
Enter fullscreen mode Exit fullscreen mode

JAVA SCRIPT :

function sum1(no, reverse = 0) {
    if (no > 0) {
        reverse = reverse * 100 + (no % 100);
        no = Math.floor(no / 100);
        return sum1(no, reverse);
    }
    return reverse;
}

console.log(sum1(123456)); 
Enter fullscreen mode Exit fullscreen mode

JAVA :

class Main {

    static int sum1(int no, int reverse) {
        if (no > 0) {
            reverse = reverse * 100 + (no % 100);
            no = no / 100;
            return sum1(no, reverse);
        }
        return reverse;
    }

    public static void main(String[] args) {
        System.out.println(sum1(123456, 0)); // Output: 563412
    }
}
Enter fullscreen mode Exit fullscreen mode

OUTPUT :

INPUT → 123456

OUTPUT → 456123

no % 1000
→ Gets the last 3 digits of the number

reverse * 1000
→ Creates space to add new digits at the end

Math.floor(no / 1000)
→ Removes the last 3 digits from the number

PYTHON :

def sum1(no,reverse=0):
    if no>0:
        reverse=reverse*1000+no%1000
        no=no//1000
        return sum1(no,reverse)
    return reverse
print(sum1(123456))
Enter fullscreen mode Exit fullscreen mode

JAVA SCRIPT :

function sum1(no, reverse = 0) {
    if (no > 0) {
        reverse = reverse * 1000 + (no % 1000);
        no = Math.floor(no / 1000);
        return sum1(no, reverse);
    }
    return reverse;
}

console.log(sum1(123456)); 
Enter fullscreen mode Exit fullscreen mode

JAVA :

class Main {

    static int sum1(int no, int reverse) {
        if (no > 0) {
            reverse = reverse * 1000 + (no % 1000);
            no = no / 1000;
            return sum1(no, reverse);
        }
        return reverse;
    }

    public static void main(String[] args) {
        System.out.println(sum1(123456, 0)); // Output: 563412
    }
}
Enter fullscreen mode Exit fullscreen mode

OUTPUT :

Top comments (0)