2 に答える
0
問題はループの最初にあります。
for t=1 : iteration
s=zeros(4,1);
...
s(offset,:)=h;
offset=offset+1;
sこれは、反復ごとに変数をリセットすることを意味します。sの初期化をループの外に移動すると、問題なく動作するはずです。そのままでは、最後の反復の結果のみを保存しているように見えます (前の反復をゼロにしました)。
編集のサイズが何であるかを知るのは少し難しいhです(単一の値のように見えますがs(offset,:) = h;、少し混乱しています)。とにかく、sすべての値を含めるのに十分な大きさにして、適切にインデックスを作成すれば、問題ありません。
s = zeros( iteration, 4, 1 );
for t = 1 : iteration
...
s(t, offset, :) = h;
offset = offset + 1;
hこれで、反復ごとにのすべての値が得られsます。そのほうがいいですか?
edit 2各反復の回数hが必要です。次の行をループ10の外に置きます。for t=
Hcount = zeros(1,iteration);
そして、これはあなたが計算した後の内部ですh:
Hcount(t) = numel(find(h==10));
すべての反復の 'for loop this will contain what you wanted - and you can check it againsts which will have one row ofh` 値の最後。
于 2013-10-23T17:55:20.747 に答える