Per implementarla ricorsivamente devi necessariamente dividerla in un wrapper + una funzione con qualche parametro di supporto.
Questa è una delle possibili soluzioni:
codice:double media1(struct tipo1 p[], int n, int i, double acc) { if(n == i) { return acc/n; } else { return media1(p, n, i+1, acc+p[i]); } } double media(struct tipo1 p[], int n){ if (n<=0){ return 0; } else{ return media1(p, n, 0, 0.0); } }

Rispondi quotando