2011-12-10 42 views
-4

我很難過。 MATLAB的語法是怎麼回事?MATLAB - 爲什麼這不起作用?

clear all; 

dx = .1; 
x=-2:dx:2; 
f=zeros(length(x),1); 
int_f=zeros(length(x),1); 
for n=1:length(x) 
    f(n)=x(n).^2; 
    int_f(n) = f(n)*dx+int_f(n); 
end 
plot(x,int_f(n)); 
+1

當你這樣做和你期望發生什麼時會發生什麼 – Dan

+2

定義「不工作」。確切地說, –

+0

該圖是1維的無意義數據集。這不應該是這樣。該代碼正在實現x^2的整數。 –

回答

6

我想你應該密謀,使用plot(x,int_f);這樣你繪製兩個陣列,而不是針對一個單一號碼一個陣列。

而且你必不可少的一步是錯誤的,它應該是除了第一次運行時,它應該是int_f(n) = f(n)*dx

+0

哇,我的壞。感謝您的迴應! –

2

因爲在plot(x,int_f(n));x是一個行向量,但int_f(n)是標量值int_f(n) = f(n)*dx+int_f(n-1)。你應該對矢量繪製矢量。