Sum-product number
Template:Short description Template:Confuse A sum-product number in a given number base is a natural number that is equal to the product of the sum of its digits and the product of its digits.
There are a finite number of sum-product numbers in any given base . In base 10, there are exactly four Template:Nowrap numbers Template:OEIS: 0, 1, 135, and 144.[1]
Definition
Let be a natural number. We define the sum-product function for base , , to be the following:
where is the number of digits in the number in base , and
is the value of each digit of the number. A natural number is a Template:Nowrap number if it is a fixed point for , which occurs if . The natural numbers 0 and 1 are trivial Template:Nowrap numbers for all , and all other Template:Nowrap numbers are nontrivial Template:Nowrap numbers.
For example, the number 144 in base 10 is a sum-product number, because , , and .
A natural number is a sociable sum-product number if it is a periodic point for , where for a positive integer , and forms a cycle of period . A Template:Nowrap number is a sociable Template:Nowrap number with , and an amicable Template:Nowrap number is a sociable Template:Nowrap number with
All natural numbers are preperiodic points for , regardless of the base. This is because for any given digit count , the minimum possible value of is and the maximum possible value of is The maximum possible digit sum is therefore and the maximum possible digit product is Thus, the Template:Nowrap function value is This suggests that or dividing both sides by , Since this means that there will be a maximum value where because of the exponential nature of and the linearity of Beyond this value , always. Thus, there are a finite number of Template:Nowrap numbers, and any natural number is guaranteed to reach a periodic point or a fixed point less than making it a preperiodic point.
The number of iterations needed for to reach a fixed point is the Template:Nowrap function's persistence of , and undefined if it never reaches a fixed point.
Any integer shown to be a sum-product number in a given base must, by definition, also be a Harshad number in that base.
Extension to negative integers
Sum-product numbers can be extended to the negative integers by use of a signed-digit representation to represent each integer.
Programming example
The example below implements the sum-product function described in the definition above [[Cycle detection|to search for Template:Nowrap numbers and cycles]] in Python.
def sum_product(x: int, b: int) -> int:
"""Sum-product number."""
sum_x = 0
product = 1
while x > 0:
if x % b > 0:
sum_x = sum_x + x % b
product = product * (x % b)
x = x // b
return sum_x * product
def sum_product_cycle(x: int, b: int) -> list[int]:
seen = []
while x not in seen:
seen.append(x)
x = sum_product(x, b)
cycle = []
while x not in cycle:
cycle.append(x)
x = sum_product(x, b)
return cycle
See also
- Arithmetic dynamics
- Dudeney number
- Factorion
- Happy number
- Kaprekar's constant
- Kaprekar number
- Meertens number
- Narcissistic number
- Perfect digit-to-digit invariant
- Perfect digital invariant