Ciao a tutti, non riesco a capire per quale motivo il risultato di un'operazione che faccio è "nan"
float produttoria(int *a, int dim){
float risultato;
if (dim == 0) return 1;
else{
risultato = risultato * finto_fibo(a[dim-1]) * produttoria(a, dim-1);
}
return risultato;
}
produttoria è ricorsiva e finto_fibo invece l'ho creata sopra e fa questo: (finto_fibo funziona)
float finto_fibo(float n){
float f1 = 1;
float fn;
if (n==f1) return 1;
for (float i = 2; i<=n; i++){
fn = (i+1)/f1;
f1 = fn;
}
return fn;
}
in pratica return risultato mi da nan e non capisco perché.
Grazie