কোনো দেওয়া নম্বর ডিজেরিয়াম নম্বর কিনা চেক করতে তার অঙ্কগুলোর তাদের রেসপেক্টিভ পজিশনের পাওয়ারের যোগফল ক্যালকুলেট করা হয়। এর আগে, নম্বরটিতে কতগুলো অঙ্ক আছে তা নির্ধারণ করা হয়।
একটি ডিজেরিয়াম নম্বর হলো এমন সংখ্যা যেখানে এর অঙ্কগুলোর তাদের রেসপেক্টিভ পজিশনের পাওয়ারের যোগফল মূল নম্বরটির সমান হয়।
নিচে ডেমোстран্স্ট্রেশন দেওয়া হলো:
উদাহরণ
def length_calculation(num_val):
length = 0
while num_val != 0:
length = length + 1
num_val = num_val // 10
return length
my_num = 192
remaining = sum_val = 0
len_val = length_calculation(my_num)
print("A copy of the original number is being made...")
num_val = my_num
while my_num > 0:
remaining = my_num % 10
sum_val = sum_val + int(remaining ** len_val)
my_num = my_num // 10
len_val = len_val - 1
if sum_val == num_val:
print(str(num_val) + " is a disarium number !")
else:
print(str(num_val) + " isn't a disarium number")
আউটপুট
A copy of the original number is being made... 192 isn't a disarium number
ব্যাখ্যা
- 'length_calculation' নামে একটি মেথড সংজ্ঞায়িত করা হয়েছে, যা নম্বরের অঙ্কের সংখ্যা ক্যালকুলেট করে।
- এটি নম্বরের ফ্লোর ডিভিশন কম্পিউট করে এবং নম্বরের দৈর্ঘ্য রিটার্ন করে।
- নম্বরটি সংজ্ঞায়িত করা হয়েছে, এবং কনসোলে ডিসপ্লে করা হয়েছে।
- এটি মডুলাস অপারেশন ব্যবহার করে ভাগশেষ বের করে, এবং একটি সম ভেরিয়েবলে যোগ করে।
- পজিশনের পাওয়ার নম্বরটির সাথে গুণ করা হয়।
- এটি নম্বরটির সাথে কম্পেয়ার করা হয়।
- যদি সমান হয়, তবে এটি হারশাদ নম্বর, অন্যথায় নয়।