Factorion - Factorion
În teoria numerelor , un factor într-o bază de date dată este un număr natural care este egal cu suma factorialelor cifrelor sale . Factorul de nume a fost inventat de autorul Clifford A. Pickover .
Definiție
Fie un număr natural. Pentru o bază , definim suma factorialul cifre de , să fie următoarele:
- .
unde este numărul de cifre din numărul din bază , este factorialul lui și
este valoarea celei de- a cifre a numărului. Un număr natural este o - factor dacă este un punct fix pentru , adică dacă . și sunt puncte fixe pentru toate bazele și, prin urmare, sunt factori triviale pentru toți , iar toate celelalte factori sunt factori netriviale .
De exemplu, numărul 145 din bază este un factor deoarece .
Pentru , suma factorialul cifre este pur și simplu numărul de cifre în reprezentarea de bază 2 Incepand .
Un număr natural este un factor sociabil dacă este un punct periodic pentru , unde pentru un întreg pozitiv și formează un ciclu de perioadă . Un factor este un factor sociabil cu , iar un factor amiabil este un factor sociabil cu .
Toate numerele naturale sunt puncte preperiodice pentru , indiferent de bază. Acest lucru se datorează faptului că toate numerele naturale de bază cu cifre satisfac . Cu toate acestea, când , atunci pentru , deci orice va satisface până . Există mai multe numere naturale mai mici decât , astfel încât numărul este garantat pentru a atinge un punct periodic sau un punct fix mai mic decât , făcându-l un punct preperiodic. Pentru , numărul de cifre pentru orice număr, din nou, făcându-l un punct preperiodic. Aceasta înseamnă, de asemenea, că există un număr finit de factori și cicluri pentru orice bază dată .
Numărul de iterații necesare pentru a ajunge la un punct fix este funcția de persistență a , și nedefinită dacă nu se ajunge la un punct fix.
Factorii pentru
b = ( k - 1)!
Fie un număr întreg pozitiv și baza numărului . Atunci:
- este un factor pentru toți .
Să fie cifrele fi și . Atunci
Astfel este un factor pentru toți .
- este un factor pentru toți .
Să fie cifrele fi și . Atunci
Astfel este un factor pentru toți .
| 4 | 6 | 41 | 42 |
| 5 | 24 | 51 | 52 |
| 6 | 120 | 61 | 62 |
| 7 | 720 | 71 | 72 |
b = k ! - k + 1
Fie un număr întreg pozitiv și baza numărului . Atunci:
- este un factor pentru toți .
Să fie cifrele fi și . Atunci
Astfel este un factor pentru toți .
| 3 | 4 | 13 |
| 4 | 21 | 14 |
| 5 | 116 | 15 |
| 6 | 715 | 16 |
Tabel cu factorii și cicluri de
Toate numerele sunt reprezentate în bază .
| Baza | Factor nontrivial ( , ) | Cicluri |
|---|---|---|
| 2 | ||
| 3 | ||
| 4 | 13 | 3 → 12 → 3 |
| 5 | 144 | |
| 6 | 41, 42 | |
| 7 | 36 → 2055 → 465 → 2343 → 53 → 240 → 36 | |
| 8 |
3 → 6 → 1320 → 12 175 → 12051 → 175 |
|
| 9 | 62558 | |
| 10 | 145, 40585 |
871 → 45361 → 871 872 → 45362 → 872 |
Exemplu de programare
Exemplul de mai jos implementează suma factorialului cifrelor descrise în definiția de mai sus pentru a căuta factorii și cicluri în Python .
def factorial(x: int) -> int:
total = 1
for i in range(0, x):
total = total * (i + 1)
return total
def sfd(x: int, b: int) -> int:
"""Sum of the factorial of the digits."""
total = 0
while x > 0:
total = total + factorial(x % b)
x = x // b
return total
def sfd_cycle(x: int, b: int) -> List[int]:
seen = []
while x not in seen:
seen.append(x)
x = sfd(x, b)
cycle = []
while x not in cycle:
cycle.append(x)
x = sfd(x, b)
return cycle
Vezi si
- Dinamica aritmetică
- Numărul Dudeney
- Număr fericit
- Constanta lui Kaprekar
- Numărul Kaprekar
- Numărul Meertens
- Număr narcisist
- Invariant perfect de la o cifră la alta
- Invariant digital perfect
- Suma numărului produsului