DEV Community

Harini
Harini

Posted on

Sum, Count, and Reverse of Digits in Python (While Loop & Recursion)

1. Sum of digits

Iterative Approach (Using While Loop)

no = int(input("Enter No: "))
sum = 0

while no > 0:
    sum = sum + no % 10
    no = no // 10
else:
    print(sum)
Enter fullscreen mode Exit fullscreen mode

Recursive Approach

def sum(no):
    if no == 0:  
        return 0
    else:
        return (no % 10) + sum(no // 10)
print(sum(1234))
Enter fullscreen mode Exit fullscreen mode

Output

2. Count of digits

Iterative Approach (Using While Loop)

num = int(input("Enter number: "))
count = 0

while num > 0:
    num = num // 10
    count += 1

print("Count =", count)
Enter fullscreen mode Exit fullscreen mode

Recursive Approach

def count(no):
    if no < 10:   
        return 1
    else:
        return 1 + count(no // 10)

print(count(1234))
Enter fullscreen mode Exit fullscreen mode

Output

3. Reverse a Number

Iterative Approach (Using While Loop)

num = int(input("Enter number: "))
rev = 0

while num > 0:
    rev = rev * 10 + num % 10
    num = num // 10

print("Reverse =", rev)
Enter fullscreen mode Exit fullscreen mode

Recursive Approach

def reverse(no, rev=0):
    if no == 0:  
        return rev
    else:
        return reverse(no // 10, rev * 10 + no % 10)
print(reverse(1234))
Enter fullscreen mode Exit fullscreen mode

Output

Top comments (0)