mirror of
https://github.com/TheAlgorithms/Python.git
synced 2026-09-28 21:45:27 +08:00
* Add Python function to check Disarium numbers * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * updating DIRECTORY.md * Add documentation link for Disarium number check Added a link to Rosetta Code for Disarium numbers. --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Christian Clauss <cclauss@me.com> Co-authored-by: cclauss <cclauss@users.noreply.github.com>
25 lines
464 B
Python
25 lines
464 B
Python
def is_disarium(num: int) -> bool:
|
|
"""
|
|
Check if a number is Disarium.
|
|
|
|
https://rosettacode.org/wiki/Disarium_numbers
|
|
|
|
>>> is_disarium(89)
|
|
True
|
|
>>> is_disarium(75)
|
|
False
|
|
>>> is_disarium(135)
|
|
True
|
|
"""
|
|
digits = list(str(num))
|
|
total = 0
|
|
for i in range(len(digits)):
|
|
total += int(digits[i]) ** (i + 1)
|
|
return total == num
|
|
|
|
|
|
if __name__ == "__main__":
|
|
import doctest
|
|
|
|
doctest.testmod(verbose=True)
|