From 1de9ed7687788669b2fea1f77658fc8dedb3eac5 Mon Sep 17 00:00:00 2001 From: VarunArora24 Date: Sat, 18 Oct 2025 16:20:45 +0530 Subject: [PATCH] Added a program to check whether a number is disarium or not --- maths/special_numbers/disarium_number.py | 27 ++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 maths/special_numbers/disarium_number.py diff --git a/maths/special_numbers/disarium_number.py b/maths/special_numbers/disarium_number.py new file mode 100644 index 000000000000..565a7676576b --- /dev/null +++ b/maths/special_numbers/disarium_number.py @@ -0,0 +1,27 @@ +def is_disarium(num): + """ + Check if a number is a Disarium number. + A Disarium number is a number in which the sum of its digits + powered with their respective positions is equal to the number itself. + + Example: + 135 -> 1¹ + 3² + 5³ = 135 ✅ + """ + digits = str(num) + total = 0 + position = 1 + + for i in digits: + total += int(i) ** position + position += 1 + + if total == num: + return True + else: + return False + + +if __name__ == "__main__": + test_numbers = [89, 135, 175, 518, 9, 10] + for n in test_numbers: + print(f"{n} → {'Disarium' if is_disarium(n) else 'Not Disarium'}")