Formula da una tabella con valori noti?

Messaggioda mfa » 22/09/2018, 12:27

Ciao, vorrei capire come scrivere una formula per determinare alcuni valori una tabella.
Mi spiego. Supponiamo di avere una tabella dove, per ciascuna riga abbiamo
x1..xn = valori che vanno da min a max e mai uguali tra loro
y = numero progressivo
Esempio tabella con 4 "x" (x1,x2,x3,x4), con valori min=1, max=6
x1x2x3x4y
12341
12352
12363
12454
12465
13456
13467
14568


Come si può scrivere una formula che, dati i valori x(n), restituisca y?
Es. per la tabella sopra: x1=1, x2=3, x3=4, x4=5 ---> y=6

Ovviamente lo stesso metedo dovrà poter essere utilizzato anche per tabelle con diversi valori min/max, (x1...xn), y.

Non so proprio da dove iniziare... :(
Grazie, Ari.
mfa
Starting Member
Starting Member
 
Messaggio: 1 di 4
Iscritto il: 22/09/2018, 06:46

Re: Formula da una tabella con valori noti?

Messaggioda @melia » 22/09/2018, 12:34

Ciao mfa, benvenuto nel forum. La tua richiesta non mi pare di matematica per la secondaria, mi sembra un problema di informatica. Sposto il messaggio nell'area adatta.
Sara Gobbato

732 chilometri senza neppure un autogrill
Avatar utente
@melia
Moderatore globale
Moderatore globale
 
Messaggio: 11090 di 21976
Iscritto il: 16/06/2008, 18:02
Località: Padova

Re: Formula da una tabella con valori noti?

Messaggioda apatriarca » 22/09/2018, 23:16

Consideriamo per ora il primo valore. Se \(x_1 = \text{min}\) allora abbiamo che possiamo ignorarlo per il calcolo di \(y\) in quanto il valore sarà uguale a quello ottenuto considerando i rimanenti valori con un nuovo minimo uguale a \(\text{min} + 1\). Se questo valore non è il minore allora puoi contare tutti le combinazione con il valore di \(x_1\) minore di quello corrente e sommare tale valore al risultato ottenuto dal conto ottenuto dai valori seguenti. Supponi ad esempio nel tuo caso \(x_1=3\). Allora hai che il numero di combinazioni con \(x_1 = 1\) è \( \binom{5}{3} \) e per \(x_1 = 2\) è \( \binom{4}{3} \). A questo punto il tuo valore sarà uguale a \( \binom{5}{3} + \binom{4}{3} + T((4, 6), (x_2, x_3, x_4)) \) dove \(T\) è il valore ottenuto dal resto della combinazione (in questo caso sarà ovviamente uguale a 1\).
apatriarca
Moderatore
Moderatore
 
Messaggio: 5132 di 10435
Iscritto il: 08/12/2008, 20:37
Località: Madrid

Re: Formula da una tabella con valori noti?

Messaggioda mfa » 14/10/2018, 17:35

Intanto grazie apatriarca!
Mi scuso per il ritardo nella risposta... non credo però di aver compreso la tua soluzione:
mi puoi fare un esempio pratico es. con la tabella indicata e con x1=1, x2=3, x3=4, x4=5?
Inoltre, come fare quando estendiamo la tabella es. con un valore max=10 anzichè 6?
Più che la soluzione di per sè mi interesserebbe capire il ragionamento ed il metodo da seguire per scrivere tale formula!
Grazie, Ari.
mfa
Starting Member
Starting Member
 
Messaggio: 2 di 4
Iscritto il: 22/09/2018, 06:46

Re: Formula da una tabella con valori noti?

Messaggioda nochipfritz » 14/12/2018, 14:11

Ciao mfa....posso provare a darti una dritta che è universale, nel senso che funziona anche senza dei limiti (min, max) ma per qualunque tipo di matrice. Certo non è il massimo dell'efficienza...e non escludo che ci siano metodi più veloci. Dovrei ripassarmi calcolo numerico!!!

Dunque esistono diverse tecniche di interpolazione . Queste tecniche consentono di costruire la funzione interpolante ad una sola variabile indipendente y=f(x) noti alcuni nodi tipo (x1,y1) , (x2, y2)....(xn,yn). Basta fare una ricerca su google e troverai subito qualche metodo (mi viene in mente la più banale...matrice di vandermonde).

Il tuo problema però è che tu ricerchi una funzione con più di 1 varibabile indipendente....quindi si tratta di ragruppare le colonne che poi saranno di input per la funzione interpolante in un unica colonna...cioè praticamente avere una biezione che da x1,x2,...xk (escludendo quindi y che resta come è) ti crei un unico x che rappresenta in modo univoco quella k-pla di dati (cioè una riga di quella colonna). Questa funzione poi, la puoi combinare con il metodo interpolante con una sola variabile indipentende e il gioco è fatto. Come biezione ti suggerisco:

Ti suggerisco questa biiezione
$\tau: \cup_{k\leq 0} \mathbb{N}^k → \mathbb{N}$

$ \tau(x_1, x_2,...,x_k) = 2^{x_1} + 2^{x_1+x_2+1} +....+ 2^{x_1+x_2+....+x_k+1}-1$

Ovviente la $\tau$ riguarda solo numeri naturali, quindi funzionerebbe solo se la matrice è fatta di numeri naturali....bisognerebbe capire se c'è una corrispondenza biunivoca in $R$ capace di compattare i dati ed avere cosi un metodo veramente universale.
nochipfritz
Junior Member
Junior Member
 
Messaggio: 112 di 125
Iscritto il: 19/08/2006, 21:46


Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite