質問する
429 次
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 against
s which will have one row of
h` 値の最後。
于 2013-10-23T17:55:20.747 に答える