Perfect digit-to-digit invariantIn number theory, a perfect digit-to-digit invariant (PDDI; also known as a Munchausen number[1]) is a natural number in a given number base that is equal to the sum of its digits each raised to the power of itself. An example in base 10 is 3435, because . The term "Munchausen number" was coined by Dutch mathematician and software engineer Daan van Berkel in 2009,[2] as this evokes the story of Baron Munchausen raising himself up by his own ponytail because each digit is raised to the power of itself.[3][4] DefinitionLet be a natural number which can be written in base as the k-digit number where each digit is between and inclusive, and . We define the function as . (As 00 is usually undefined, there are typically two conventions used, one where it is taken to be equal to one, and another where it is taken to be equal to zero.[5][6]) A natural number is defined to be a perfect digit-to-digit invariant in base b if . For example, the number 3435 is a perfect digit-to-digit invariant in base 10 because . for all , and thus 1 is a trivial perfect digit-to-digit invariant in all bases, and all other perfect digit-to-digit invariants are nontrivial. For the second convention where , both and are trivial perfect digit-to-digit invariants. A natural number is a sociable digit-to-digit invariant if it is a periodic point for , where for a positive integer , and forms a cycle of period . A perfect digit-to-digit invariant is a sociable digit-to-digit invariant with . An amicable digit-to-digit invariant is a sociable digit-to-digit invariant with . All natural numbers are preperiodic points for , regardless of the base. This is because all natural numbers of base with digits satisfy . However, when , then , so any will satisfy until . There are a finite number of natural numbers less than , so the number is guaranteed to reach a periodic point or a fixed point less than , making it a preperiodic point. This means also that there are a finite number of perfect digit-to-digit invariant and cycles for any given base . The number of iterations needed for to reach a fixed point is the -factorion function's persistence of , and undefined if it never reaches a fixed point. Perfect digit-to-digit invariants and cycles of Fb for specific bAll numbers are represented in base . Convention 00 = 1
Convention 00 = 0
Programming examplesThe following program in Python determines whether an integer number is a Munchausen Number / Perfect Digit to Digit Invariant or not, following the convention . num = int(input("Enter number:"))
temp = num
s = 0.0
while num > 0:
digit = num % 10
num //= 10
s+= pow(digit, digit)
if s == temp:
print("Munchausen Number")
else:
print("Not Munchausen Number")
The examples below implement the perfect digit-to-digit invariant function described in the definition above to search for perfect digit-to-digit invariants and cycles in Python for the two conventions. Convention 00 = 1def pddif(x: int, b: int) -> int:
total = 0
while x > 0:
total = total + pow(x % b, x % b)
x = x // b
return total
def pddif_cycle(x: int, b: int) -> list[int]:
seen = []
while x not in seen:
seen.append(x)
x = pddif(x, b)
cycle = []
while x not in cycle:
cycle.append(x)
x = pddif(x, b)
return cycle
Convention 00 = 0def pddif(x: int, b: int) -> int:
total = 0
while x > 0:
if x % b > 0:
total = total + pow(x % b, x % b)
x = x // b
return total
def pddif_cycle(x: int, b: int) -> list[int]:
seen = []
while x not in seen:
seen.append(x)
x = pddif(x, b)
cycle = []
while x not in cycle:
cycle.append(x)
x = pddif(x, b)
return cycle
See also
References
External links
|
Portal di Ensiklopedia Dunia