ForHosting KIT · Strumenti per sviluppatori

Calcolatore dell’espansione di Engel per frazioni

Questo calcolatore converte qualsiasi numero razionale positivo nella sua rappresentazione esatta come espansione di Engel.

● BetaGratis · nel tuo browser
Usalo da WebAPIEmailTelegramApp presto

Inserendo una frazione come 4/13, Lei riceve la sequenza non decrescente dei denominatori di Engel, i corrispondenti termini frazionari unitari e una versione normalizzata dell’input. Ogni calcolo usa aritmetica intera, quindi approssimazioni decimali periodiche e arrotondamenti in virgola mobile non possono modificare il risultato. Lo strumento è utile per studiare la teoria dei numeri, preparare esempi svolti, verificare calcoli simbolici e costruire test software riproducibili in cui serve un’espansione canonica.

Che cosa rappresenta un’espansione di Engel

Un’espansione di Engel esprime un numero reale positivo come una somma i cui denominatori sono prodotti cumulativi. Se la lista restituita è a1, a2, a3, il valore rappresentato è 1/a1 + 1/(a1 a2) + 1/(a1 a2 a3), e lo stesso schema prosegue per ogni voce successiva. Con un input razionale positivo il procedimento termina, quindi il calcolatore restituisce una lista e un’espressione finite. I denominatori non sono decrescenti: questa proprietà conferisce alla rappresentazione la sua tipica struttura ordinata. Non coincide con una comune scomposizione in frazioni egizie: entrambe usano frazioni unitarie, ma nell’espansione di Engel ogni nuovo termine è vincolato dal prodotto di tutti i denominatori scelti in precedenza. L’output include sia la lista grezza, pratica per calcoli o codice, sia i termini espliciti della somma di prodotti, più facili da controllare. La frazione viene prima ridotta, perciò input equivalenti come 8/26 e 4/13 producono la stessa frazione normalizzata e la stessa espansione.

Come funziona l’algoritmo esatto

Il calcolo parte dal valore razionale positivo corrente p/q e sceglie come denominatore successivo il soffitto di q/p. La scelta avviene mediante divisione intera, senza convertire la frazione in un numero decimale. Il residuo viene poi trasformato secondo la ricorrenza di Engel: p è sostituito da a per p meno q, q rimane invariato e la frazione risultante viene ridotta mediante il massimo comune divisore. Quando il nuovo numeratore è zero, l’espansione è completa; altrimenti gli stessi passaggi vengono ripetuti. Numeratori, denominatori, soffitti, prodotti e riduzioni impiegano interi a precisione arbitraria, perciò la risposta resta esatta anche oltre l’intervallo sicuro degli interi JavaScript. L’implementazione rifiuta testo non valido, zero, valori negativi e denominatori nulli senza tentare interpretazioni ambigue. Dimensione dell’input e lunghezza dell’espansione sono limitate per mantenere prevedibile l’esecuzione. La stessa frazione valida genera quindi sempre gli stessi dati matematici nel browser e tramite API.

Come leggere e utilizzare il risultato

Consulti anzitutto il campo dei denominatori quando Le serve la sequenza canonica di Engel. Gli elementi sono stringhe, così gli interi molto grandi rimangono esatti nei sistemi JSON che non rappresentano in sicurezza ogni valore numerico. Il campo della lunghezza indica quanti denominatori, e dunque quanti termini frazionari unitari, sono presenti. Il campo dell’espansione moltiplica cumulativamente i denominatori selezionati e mostra ogni reciproco, rendendo semplice verificare la somma in modo indipendente con aritmetica razionale. A scopo didattico, confronti ogni denominatore con la regola del soffitto e ricavi il residuo dopo ciascun passaggio. Nei test software, usi la frazione normalizzata e l’array dei denominatori come riferimenti stabili, includendo input equivalenti non ridotti per controllare la normalizzazione. Questa capacità accetta soltanto frazioni positive: non calcola espansioni infinite di decimali irrazionali, non interpreta numeri misti e non approssima valori in virgola mobile. Via API, ogni richiesta costa $0.002. Browser e API condividono lo stesso risolutore puro.

Verificare un esercizio di teoria dei numeri

Confronti una sequenza di Engel ricavata a mano con il risultato esatto ed esamini i termini dei prodotti cumulativi.

Creare vettori di test deterministici

Generi risultati attesi stabili per librerie di aritmetica razionale senza dipendere da approssimazioni in virgola mobile.

Illustrare le rappresentazioni razionali

Mostri come la ricorrenza del soffitto trasforma una frazione positiva in un’espansione ordinata come somma di prodotti.

Quale formato di input è accettato?

Usi due interi positivi in base 10 separati da una barra, per esempio 4/13. Sono ammessi spazi circostanti e un segno più facoltativo.

Posso inserire zero o una frazione negativa?

No. Un input con numeratore o denominatore non positivo restituisce un errore di input non valido.

Perché i denominatori sono restituiti come stringhe?

Le stringhe conservano esattamente gli interi a precisione arbitraria quando il risultato viene codificato in JSON.

È la stessa cosa di un’espansione in frazioni egizie?

Non esattamente. I termini di Engel hanno denominatori formati dai prodotti cumulativi di una sequenza non decrescente, con un ulteriore vincolo strutturale.

Il calcolatore usa approssimazioni decimali?

No. Analisi, soffitti, riduzioni mediante massimo comune divisore e prodotti usano aritmetica intera esatta.

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.

POSThttps://api.kit.forhosting.com/numth/engel-expansion

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/numth/engel-expansion \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"fraction":"4/13"}'
{
  "fraction": "4/13"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.engel_expansion",
  "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.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Leggi la documentazione completa del KIT →