Salve ragazzi!Vi scrivo perchè non riesco proprio a capire il funzionaento del metodo ricorsivo..ad esempio dato questo programma:
Io ho provato a buttare giù qualcosa del tipo:codice:Assegnato un vettore di elementi,scrivere una funzione ricorsiva che calcoli il minimo valore tra la differenza di ogi elemento con il precedente
Solo che:1)Non viene;2)Non sono molto convinto del metodo da me utilizzato.codice:#include<iostream> using namespace std; int Differenza(double *n,int indice,int risultato); int main() { double n[3]={8,4,5}; cout << Differenza(n,2,0); return 0; } int Differenza(double *n,int indice,int risultato) { if (indice == 0) return risultato; risultato = n[indice]-n[indice-1]; if (risultato>Differenza(n,--indice,risultato)) //Quando qua decremento l'indice,... risultato = Differenza(n,--indice,risultato) ;//Quava decrementato ulteriormente? }
Premetto che il calcolare le somme,i prodotti e altri calcoli iterativamente (ad es.il fattoriale) sono capace,ma quando si tratta di fare dei confronti all'interno della funzione vado in palla
Suggerimenti?


Rispondi quotando