Problema ciclo for in matlab

Simo201
Salve a tutti devo realizzare una funzione in matlab che prende un vettore $pol((1,2,3,4,5))$ che rappresenta il vettore dei coeficienti di un polinomio di quarto grado, e plottare la funzione di 4 grado che se ne ricava nell'intervallo $[-10,10]$

Scrivendo la procedura con la formula estesa del polinomio tutto ok:
function[radici]=polinomio()

pol=input('inserisci i coefficenti del polinomio di 4° grado\n');
x=-10:0.5:10;
y=pol(1,1)*x.^4+pol(1,2)*x.^3+pol(1,3)*x.^2+pol(1,4)*x.^1+pol(1,5)*x.^0
plot(x,y);

end


ma col ciclo for non ottengo lo stesso risultato:
function[radici]=polinomio()

pol=input('inserisci i coefficenti del polinomio di 4° grado\n');
x=-10:0.5:10;
y=0;
for i=1:5
    z=pol(1,i)*x.^5-i;
    y=y+z;
end
plot(x,y);

end


le due forme non sono equivalenti?

Risposte
Blackorgasm
un possibile errore è forse all'esponenziale, prova a mettere x.^(5-i)

Simo201
Era proprio quello il problema!!! :-D :-D Ti ringrazio.
Stavo impazzendo perché come flusso di esecuizione il ciclo mi sembrava corretto e non avevo idea di come poteva essere cambiato!!

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.