ForHosting KIT · Matematica

Combinazione lineare di due numeri: trovi x, y per ax+by=c

Trovi gli interi che, moltiplicati per 15 e 25, danno 10: 15 × 4 + 25 × (−2) = 10, possibile perché il massimo comune divisore, 5, divide 10. Se non lo divide, le viene indicato che non esiste soluzione. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
A
15
B
25
C
10
Ottiene
Gcd
5
X
4
Y
-2
Verifica
10

Una combinazione lineare di due interi a e b è qualsiasi intero che può scriversi come a volte x più b volte y per certi interi x e y. Non ogni obiettivo è raggiungibile: il teorema di Bézout afferma che l’insieme raggiungibile è esattamente quello dei multipli del massimo comune divisore di a e b. Questo calcolatore di combinazione lineare di due numeri accetta i coefficienti a e b più un obiettivo c, calcola quel MCD con l’algoritmo di Euclide esteso e restituisce una coppia particolare di coefficienti che realizza l’obiettivo, oppure segnala che non esiste soluzione intera. Gli studenti lo usano per controllare esercizi diofantei; gli sviluppatori riusano lo stesso contratto puro in gare, aritmetica di orari e pipeline di aritmetica modulare.

Cosa significa una combinazione lineare e quando un obiettivo è raggiungibile

Dati interi a e b, l’insieme di tutte le combinazioni lineari intere a volte x più b volte y è un oggetto fondamentale della teoria elementare dei numeri. L’algoritmo di Euclide mostra che questo insieme coincide con quello dei multipli di g, dove g è il massimo comune divisore di a e b. In modo equivalente, l’equazione diofantea lineare a volte x più b volte y uguale a c ha soluzioni intere se e solo se g divide c.

Quando esiste una soluzione, ne esistono infinite: se (x0, y0) è una soluzione particolare, la famiglia generale è x uguale a x0 più (b su g) volte t e y uguale a y0 meno (a su g) volte t per ogni parametro intero t. Il passo costruttivo che produce una soluzione particolare è l’algoritmo di Euclide esteso: mentre calcola g, traccia come ogni resto si scrive come combinazione degli a e b originali e, al termine, fornisce i coefficienti di Bézout per g stesso.

Moltiplicare quei coefficienti per la scala intera c su g produce una soluzione per l’obiettivo c. Questo calcolatore impacchetta l’intero flusso: restituisce il MCD, un indicatore booleano possible, una coppia particolare (x, y) quando l’obiettivo è raggiungibile, una verifica numerica uguale a a volte x più b volte y, una stringa di equazione leggibile e stringhe di forma generale per la famiglia parametrica.

Quando g non divide c, la risposta resta un successo ma imposta possible a false e spiega l’ostacolo, nel linguaggio d’aula secondo cui l’equazione non ha soluzione intera, invece di fingere che il client abbia inviato dati non validi.

Dove un calcolatore di combinazione lineare porta valore concreto

La programmazione competitiva e l’allenamento olimpico chiedono spesso soluzioni intere di a volte x più b volte y uguale a c; un oracolo deterministico che certifica la risolvibilità tramite il test del MCD e restituisce i coefficienti riduce il tempo di debug su errori di scala di uno. I taccuini di ingegneria usano combinazioni a due coefficienti per riconciliare orari periodici, denominazioni monetarie o conteggi di denti d’ingranaggio che devono colpire un totale esatto.

Le dimostrazioni di crittografia e aritmetica modulare partono spesso dallo stesso passo di Euclide esteso prima di specializzarsi in inversi quando il MCD è uno. La validazione fallita non consuma saldo.

Controllo di esercizi diofantei lineari

Invii a, b e l’obiettivo c per verificare se esistono interi x, y con a·x + b·y = c e ottenere una soluzione particolare più la forma parametrica generale.

Oracoli per gare e programmazione

Automatizzi test di risolvibilità e recupero di coefficienti per compiti diofantei lineari a due variabili in judge online, generatori e test unitari.

Aritmetica di orari e denominazioni

Decida se due ampiezze di passo possono colpire un totale esatto (turni, monete, denti d’ingranaggio) con la regola di divisibilità del MCD e coefficienti espliciti.

Come esprimo un obiettivo come combinazione lineare di due numeri?

Invii interi a, b e l’obiettivo c. Se g divide c restituisce interi x, y con a·x + b·y = c; altrimenti possible è false.

Quando non c’è soluzione intera?

Quando gcd(a,b) non divide c. La risposta ha successo con possible false e una stringa reason; è assenza di soluzione matematica, non errore di validazione del client.

I coefficienti sono unici?

No. Se (x0,y0) funziona, funziona anche x0+(b/g)·t e y0−(a/g)·t per ogni intero t.

Cosa succede se a e b sono entrambi zero?

Una combinazione lineare di due zeri non è un insieme generatore ben definito per un valore obiettivo.

Come verifico i coefficienti ottenuti?

Moltiplichi ciascun numero per il suo coefficiente e sommi i risultati. Per 15 e 25 con obiettivo 10, la coppia 4 e −2 dà 15 × 4 + 25 × (−2), cioè 10, quindi la combinazione è corretta.

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/algebra/linear-combination

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/algebra/linear-combination \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":15,"b":25,"c":10}'
{
  "a": 15,
  "b": 25,
  "c": 10
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "algebra.linear_combination",
  "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.

Contratto di ingresso, forma della risposta e comportamento d’errore

Anche la coppia a uguale a zero e b uguale a zero viene rifiutata, perché una combinazione lineare di due zeri non è un insieme generatore significativo per un obiettivo. Su un’istanza ben formata ma irrisolvibile, possible è false, x e y sono omessi e reason indica che il MCD non divide l’obiettivo. Esempio: a uguale a quindici, b uguale a venticinque, c uguale a dieci produce MCD cinque, possible true e una coppia valida x uguale a quattro e y uguale a meno due. Esempio di impossibilità: a uguale a quattro, b uguale a sei, c uguale a cinque produce MCD due e possible false perché due non divide cinque. Invii con POST un corpo JSON con tre interi obbligatori: a e b, i coefficienti della combinazione, e c, il valore obiettivo che desidera esprimere. Gli alias first o m per a, second o n per b e target o rhs per c sono accettati per client basati su moduli. Ogni campo può arrivare come numero JSON, stringa di cifre con segno opzionale o bigint entro il massimo assoluto degli interi sicuri della piattaforma; decimali, stringhe vuote, campi mancanti e valori fuori da quell’intervallo falliscono con invalid_input indicando il campo e non vengono fatturati. Su un’istanza risolvibile il corpo include a, b e c in eco; il MCD non negativo; possible true; interi x e y; check uguale alla combinazione ricostruita; equation come quindici volte quattro più venticinque volte meno due uguale a dieci; stringhe general_x e general_y che espongono il parametro libero t; e una breve formula che riafferma il criterio di divisibilità. Abbini la risposta al proprio generatore di passi se le servono tutte le soluzioni intere; questo endpoint restituisce una soluzione particolare più la forma generale, non un’enumerazione infinita.

Dove un calcolatore di combinazione lineare porta valore concreto

I corsi di algebra e teoria dei numeri assegnano esercizi costruttivi di Bézout ed equazioni diofantee lineari; tutor e plugin LMS necessitano di un contratto JSON stabile che distingua l’ingresso non valido da un caso genuino senza soluzione, così i correttori non assegnano punti gratuiti a risposte vuote. Poiché l’implementazione è parse di livello A puro, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello né rete in uscita.

Quanto costa il calcolatore di combinazione lineare?

Lo strumento nel browser è gratuito. Le richieste API usano il saldo prepagato KIT a $0.002 per chiamata riuscita; l’ingresso non valido non viene fatturato.

Leggi la documentazione completa del KIT →