Calcolatore della catena dei fattoriali delle cifre
Una catena dei fattoriali delle cifre parte da un intero non negativo, lo sostituisce con la somma dei fattoriali delle sue cifre decimali e ripete l’operazione finché un valore non compare per la seconda volta.
Esegui gratis nel browser
Questo calcolatore restituisce il numero di valori distinti visitati prima della prima ripetizione. Lei può quindi esplorare in modo rapido ed esatto questo classico procedimento della teoria dei numeri, senza calcolare manualmente ogni fattoriale né controllare l’intera successione alla ricerca di un ciclo.
Come si forma una catena dei fattoriali delle cifre
Parta dall’intero non negativo che desidera esaminare. Separi le sue cifre decimali, calcoli il fattoriale di ciascuna e sommi tali fattoriali. Il risultato diventa il valore successivo e la stessa regola viene applicata di nuovo. Per esempio, iniziando da 69 si ottiene 6! + 9!, cioè 363600. Elaborando le cifre di questo risultato si produce il valore seguente e la catena prosegue esattamente nello stesso modo. Il calcolatore memorizza ogni valore incontrato. Non appena il risultato successivo è già comparso, il processo è entrato in un ciclo e il calcolo termina. La lunghezza indicata conta soltanto i valori distinti visitati, compreso il numero iniziale, ma non conta una seconda volta l’occorrenza ripetuta. Questa convenzione rende il risultato preciso e adatto al confronto fra valori iniziali. Lo zero viene trattato come una cifra decimale a pieno titolo, quindi 0! equivale a 1. In nessuna fase del calcolo vengono impiegati arrotondamenti o approssimazioni.
Come interpretare la lunghezza restituita
Il risultato è una sola lunghezza, non l’intera successione intermedia. Risponde alla domanda fondamentale: quanti termini distinti compaiono prima che inizi una ripetizione? Consideri una catena che raggiunge un valore già visto alcuni passaggi prima. Ogni termine fino alla sua prima comparsa aggiunge un’unità alla lunghezza, mentre la seconda comparsa indica il punto di arresto e non aggiunge altro. La definizione comprende sia i punti fissi sia i cicli più lunghi. Se un valore si trasforma direttamente in sé stesso, forma una catena di lunghezza uno quando viene usato come punto iniziale. Se invece il punto di partenza attraversa prima diversi valori e infine raggiunge quel punto fisso, vengono contati tutti i valori distinti del percorso. Interi iniziali diversi possono confluire nello stesso percorso successivo e avere comunque lunghezze differenti, perché differiscono i loro prefissi esclusivi. L’algoritmo usa aritmetica esatta per interi sicuri, convalida l’input e registra esplicitamente le appartenenze, senza affidarsi a un limite ipotetico di iterazioni o a una scorciatoia matematica.
Come usare il calcolatore in modo affidabile
Inserisca un intero sicuro non negativo nel campo n. Sono richiesti numeri interi perché le frazioni decimali non presentano la successione di cifre prevista per questa operazione, mentre i numeri negativi non appartengono al dominio definito. La versione nel browser è pratica per esperimenti individuali, dimostrazioni didattiche e verifiche durante lo studio delle catene fattoriali. L’API è utile quando un programma deve confrontare più input selezionati, preparare esercizi o verificare risultati prodotti altrove; ogni richiesta costa $0.002. Il calcolo è deterministico: lo stesso intero restituisce sempre la stessa lunghezza, senza chiamate di rete, casualità, ora corrente o dati esterni. Sebbene inizialmente la trasformazione possa produrre un numero maggiore, le somme dei fattoriali delle cifre entrano rapidamente in una regione finita e limitata. La registrazione dei valori visitati fornisce quindi una condizione naturale di terminazione. Per ottenere risultati riproducibili, conservi l’input originale e la lunghezza restituita e specifichi che l’occorrenza ripetuta è esclusa quando confronta fonti con convenzioni diverse.
Casi d'uso
Esplorare successioni di teoria dei numeri
Misuri quanto procede un valore iniziale prima che il processo dei fattoriali delle cifre raggiunga un termine ripetuto.
Controllare esercizi didattici
Verifichi una catena calcolata manualmente e confermi che i suoi termini distinti siano stati contati in modo coerente.
Confrontare valori iniziali selezionati
Interroghi l’API per un insieme di interi e confronti le lunghezze delle catene in un esperimento riproducibile.
Domande frequenti
Che cosa conta esattamente la lunghezza?
Conta i valori distinti dall’intero iniziale fino all’ultimo valore nuovo prima della prima ripetizione. L’occorrenza ripetuta non viene contata di nuovo.
Il numero iniziale è incluso?
Sì. L’intero iniziale è il primo valore distinto della catena e aggiunge un’unità alla lunghezza restituita.
Come viene trattata la cifra zero?
Lo zero contribuisce con 0!, che equivale a 1. Un valore iniziale pari a zero passa quindi a uno.
n può essere negativo o frazionario?
No. L’input deve essere un intero sicuro non negativo. I valori negativi e frazionari generano un errore di input non valido.
Quanto costa una richiesta API?
Una richiesta API costa $0.002. Lei può anche eseguire il calcolatore direttamente nel browser.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/numth/digit-factorial-chain \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":69}'const res = await fetch("https://api.kit.forhosting.com/numth/digit-factorial-chain", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 69
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/digit-factorial-chain",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 69
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/digit-factorial-chain", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":69}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":69}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/digit-factorial-chain", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"n": 69
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.digit_factorial_chain",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |