Python Program to print disarium numbers between 1 and 100

In this simple python program, we need to print Disarium numbers in a range. It is an number python program.

To understand this example, you should have knowledge of the following Python programming topics:

What is a Disarium number?

In this basic python program example, we need to know the Disarium number and how to print disarium numbers within a range. We already explained it in the previous program. Disarium number is a number in which the sum of the digits raised to the power of the respective position will be equal to the number itself.

How to print Disarium numbers in a range in python?

Suppose we take the number 89; we have to check its a disarium number or not. So we have to add 8 power of 1 and 9 square, which is 8 + 81 = 89. So, number 89 is a disarium number. In this simple python program, we need to print all the disarium numbers between 1 and 100. So we have to check each number for disarium or not in that range.

We are using two user-defined functions to solve this program, one is for finding the length of the number and the other for check that number is disarium or not. Then in the main program, we call the disarium number check function, then length function is called from the sumdigit function.

DIsarium Check Function: In this user function in python language, we call another function to get the length of the number. We initialize two variables for the remainder and sum, Open a while loop in python until the number is equal to zero, take the remainder by using the mod operator. We use arithmetic operations such as add the sum = sum + reminder raised to length. After that, we divide the number by 10 to remove the last digit, and we decrement the length by one.

Length Function:Here, we initialize a variable as length to zero and open a while loop until the number is not equal to zero. We increment the length variable by 1 in each iteration, and we remove one digit from the number by dividing the number by 10. Then after the while loop ends, return the length using the parameter passing method in python language.


STEP 1: Initialize a variable for the result as zero.

STEP 2: Using print in python, display a message as " displaying the disarium numbers."

STEP 3: Use a for loop to check every number from 1 to 100 using the range method in a python programming language.

STEP 4: Call the function for checking the number for disarium and return the value from the function to a variable for the result.

STEP 5: Inside that calling function, it calls another function to calculate the number's length.

STEP 6: Use an 'if condition' to check the result is the same as the number. If so, print the number.


STEP 1: Initialize the remainder and sum as zero.

STEP 2: Call the function to calculate length.

STEP 3: Open a while loop until the number not equal to zero.

STEP 4: Use the mod operator to split the digit from the number.

STEP 5: Calculate sum as sum + (rem**len).

STEP 6: Divide the number with 10 to remove one digit from the number.

STEP 7: Decrement the length by one and return the sum.


STEP 1: First, we initialize a variable to zero for length.

STEP 2: Open a while loop until the number is not equal to zero.

STEP 3: Increment the length by one in every iteration.

STEP 4: Split the number by dividing it with 10 to remove the counted digit.

STEP 5: Return the length using python programming syntax.

Python Source Code

                                          def Length(n):    
    length = 0;    
    while(n != 0):                    # calculating the length of the number
        length = length + 1;    
        n = n//10;    
    return length;    
def sumdigit(num):    
    rem = sum = 0;    
    len = Length(num);     # checking the number is disarium or not
    while(num > 0):    
        rem = num%10;   
        sum = sum + (rem**len);    
        num = num//10;    
        len = len - 1;    
    return sum;    
result = 0;    

print("Disarium numbers between 1 and 100 are");    
for i in range(1, 101):           # printing disarium numbers
    result = sumdigit(i);    
    if(result == i):    


Disarium numbers between 1 and 100 are

1  2  3  4  5  6  7  8  9  89