जब 1 और 100 के बीच सभी डिसैरियम नंबर्स प्रिंट करने की आवश्यकता होती है, तो 1 और 100 के बीच एक सिंपल लूप चलाया जा सकता है और हर संख्या की लंबाई की गणना की जा सकती है, और पोजीशन की पावर को संख्या से गुणा किया जा सकता है।
यदि वे समान हैं, तो इसे डिसैरियम नंबर माना जाता है।
डिसैरियम नंबर वह है जहां उसके अंकों का योग उनकी संबंधित पोजीशन की पावर तक होता है जो मूल संख्या के बराबर होता है।
इसके लिए एक प्रदर्शन नीचे दिया गया है:
उदाहरण
def length_calculation(my_val):
len_val = 0
while my_val != 0:
len_val = len_val + 1
my_val = my_val // 10
return len_val
def digit_sum(my_num):
remaining = sum_val = 0
len_fun = length_calculation(my_num)
while my_num > 0:
remaining = my_num % 10
sum_val = sum_val + (remaining ** len_fun)
my_num = my_num // 10
len_fun = len_fun - 1
return sum_val
ini_result = 0
print("The disarium numbers between 1 and 100 are : ")
for i in range(1, 101):
ini_result = digit_sum(i)
if ini_result == i:
print(i)आउटपुट
The disarium numbers between 1 and 100 are : 1 2 3 4 5 6 7 8 9 89
व्याख्या
- दो मेथड्स परिभाषित किए गए हैं, जिनका उपयोग संख्या में अंकों की संख्या खोजने के लिए, और संख्या में अंक को उसकी पोजीशन से गुणा करके उत्पाद प्राप्त करने के लिए किया जाता है।
- एक प्रारंभिक परिणाम को 0 असाइन किया जाता है।
- 1 और 101 के बीच संख्याओं पर एक लूप इटरेट किया जाता है (101 को छोड़कर), और यदि संख्या संख्या में अंकों के उत्पाद और पोजीशन के समान है, तो इसे डिसैरियम नंबर माना जाता है।
- इसे आउटपुट के रूप में कंसोल पर प्रदर्शित किया जाता है।