附加圖像有我正在處理的問題。以下是我的m文件中的代碼和我在命令窗口中獲得的輸出。 M-文件編號:
function p = PolyEval (n, a, y, x)
for i = n+1:2
p = a(i - 1) + (x + y(i - 1))*a(i);
a(i-1) = p;
end
fprintf('%6.0f %18.8f \n', p);
end
命令窗口代碼和輸出:
PolyEval(5, [-1, 3.3, 0, -2.2, 5, -1.6], [-1, 1, -1, 1, -1], 1.53)
未定義的函數或變量 「p」。
PolyEval中的錯誤(第6行) fprintf('%6.0f%18.8f \ n',p);
關於代碼和問題,n是控制兩個數組大小的變量,a是由n + 1個變量組成的一維數組,y是一個由n組成的一維數組變量,x是用於計算的變量。
我在一張紙上測試了代碼算法,它應該返回一個6.65的值,但在這種情況下,它給了我上面的錯誤。
你們能否幫我理解我爲什麼會出錯?請看看我想要寫這個matlab代碼的問題和方程組成的圖像。
您的for循環不指望您認爲它的作用。當用筆和紙做的時候,在不同迭代中'i'的值是多少? – Daniel
我的值應該從6降低到2在每次迭代中減少1 – Mihir