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);その方法を使用して、あなたではなく1つの番号に対して1つの配列よりも、二つの配列をプロットすることをプロットされるべきだと思います。

また、あなたの不可欠なステップが間違っている、それはplot(x,int_f(n));で、xが行ベクトルですが、int_f(n)はスカラー値であるので、それはint_f(n) = f(n)*dx

+0

うわー、私の悪い。レスポンスありがとう! –

2

する必要があります最初の実行を除いてint_f(n) = f(n)*dx+int_f(n-1)でなければなりません。ベクトルに対してベクトルをプロットする必要があります。

関連する問題