|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 83
|
[C++] Problema di implementare una formula
Salve ragazzi io dovrei esprimere una formula che mi esegua un calcolo...ma non riesco proprio a pensarla...
Il problema è questo: possiedo un insime di k elementi facciamo esempio di 4... S={0,2,1,3} e possiedo una matrice con 4x4 con dei valori...io devo esprimere questa formula W(i=0)= sommatoria(di tutte le j escuso i=0) di (Aij-Ahj)*W(j) dove h è un elemento arbitrario dell'insieme S escluso i e i termini Aij Ahj sono glli elementi presi dalla matrice.... quindi W(0)= (A02-A22)*W(2)+(A01-A21)*W(1)+(A03-A23)*W(3) per il calcolo di W(2) si decrementa l'insieme S={2,1,3} e si calcola W(2)=(A21-A11)*W(1)+(A23-A13)*W(3) si continua così fino ad arrivare all'insime S={3} composto da un solo elemento dove per definizione W(3)=1...quando c'è un solo elemento W(x)=1; io ho fatto così: calcolaPesi(int *rilevantiTot,int S,int inizio){ int i = rilevantiTot[inizio]; int W =0; if(S == 0) return 0; if(S == 1){ W = 1; arrayPesi[i]= W; return W; } int h = rilevantiTot[inizio+1]; if(S == 2){ int j = h; W += abs(matrix[i][j]-matrix[h][j])* calcolaPesi(rilevantiTot,S-1,inizio+1); arrayPesi[i]= W; return W; } for(int s=inizio;s<S-1;s++){ int j = rilevantiTot[s+1]; // h = j; W += abs(matrix[i][j]-matrix[h][j])* calcolaPesi(rilevantiTot,S-1,inizio+1); } arrayPesi[i]=W; return W; } Facendo i calcoli non ottengo ciò che speravo....ma non riesco a trovare una soluzione migliore...idee??grazie... |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:20.



















