salve, dovrei scrivere una funzione, che dato un vettore di float passato come argomento, restituisca un vettore delle stesse dimensioni in cui ogni elemento di indice k conterrà il prodotto dei primi k elementi.
ho fatto questa funzione che segue, ma purtroppo il vettore risultante è un vettore che contiene solo degli 0.00, ho provato a cambiare e modificare varie volte il ciclo for, ma ho sempre avuto dei risultati sbagliati, ila massimo che ho ottenuto è avere il primo elemento corretto ma solo perche è impostato all'esterno del ciclo for uguale al primo elemento del vettore passato come argomento. il codice che ho scritto è il seguente:
codice:
float* pvettore (float *vettore, int n)
{
int i = 0;
float *vettore2;
vettore2 = (float*) malloc (n* sizeof(float*));
vettore2[0]= vettore[0];
for(i=1; i<=n; i++)
{
vettore2[i] = vettore2[i-1] * vettore[i];
}
return vettore2;
}
mi date qualche suggerimento per riuscire ad ottenere il risultato desiderato, visto che il compilatore non mi segnala errori e che ho esaurite le idee sfruttando le mie poche conoscenze del c. vi ringrazio a tutti dell' aiuto!