Problema ciclo for in matlab
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:
ma col ciclo for non ottengo lo stesso risultato:
le due forme non sono equivalenti?
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);
endma 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);
endle due forme non sono equivalenti?
Risposte
un possibile errore è forse all'esponenziale, prova a mettere x.^(5-i)
Era proprio quello il problema!!!
Ti ringrazio.
Stavo impazzendo perché come flusso di esecuizione il ciclo mi sembrava corretto e non avevo idea di come poteva essere cambiato!!
Ti ringrazio. Stavo impazzendo perché come flusso di esecuizione il ciclo mi sembrava corretto e non avevo idea di come poteva essere cambiato!!