私はMatlab(2012)に3列とX行の行列を持っています.Xはユーザーによって定義されているので、毎回異なります. この例では、固定の 5x3 マトリックスを使用します。
したがって、マトリックス内の各行で反復関数を実行したいと思いますが、3 番目の列の値は特定の値を下回っています。次に、新しい値を同じマトリックス内に格納するため、元の値を上書きします。
以下のコードは、問題を簡略化したものです。
M=[-2 -5 -3 -2 -4]; %Vector containing random values
Vf_X=M+1; %Defining the first column of the matrix
Vf_Y=M+2; %Defining the secound column of the matrix
Vf_Z=M; %Defining the third column of the matrix
Vf=[Vf_X',Vf_Y',Vf_Z']; %Creating the matrix
while Vf(:,3)<0
Vf=Vf+1;
end
disp(Vf)
私が得る結果は
1 2 0
-2 -1 -3
0 1 -1
1 2 0
-1 0 -2
理想的には、代わりにこの結果を得たいと思います
1 2 0
1 2 0
1 2 0
1 2 0
1 2 0
いずれかの値が最初から 0 を超えている場合、while は開始されず、1 つの値が 0 を超えるとすぐに停止します。
これが理にかなっており、十分な情報を提供したことを願っています
お時間をいただき、ありがとうございました。