how to formulate if statement for a vector?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Shubham Mohan Tatpalliwar
il 15 Ott 2018
Commentato: Shubham Mohan Tatpalliwar
il 18 Ott 2018
A=[-3,-2,-1,1,2,3]
B=[-3,-2,-1,2,3,4]
i have 4 condition and have to slect only one when it satisfies.
- negative A negative B i.e. A=[-3,-2,-1,0,0,0] B=[-3,-2,-1,0,0,0]
- negative A positive B .
- positive A negative B.
- positive A positive B.
How can i select only one condition if input is in vector.
4 Commenti
Steven Lord
il 15 Ott 2018
The elements at some of the locations of your vectors satisfy your first condition. Others satisfy the fourth condition. Do you want to choose one of those conditions at random and apply it to the entire A and B vectors, or do you want to apply the condition that each pair of corresponding elements satisfies to that element of the result?
What do you want to do if none of the conditions are satisfied?
A = zeros(1, 6);
The elements of A are neither positive nor negative.
Risposta accettata
Torsten
il 15 Ott 2018
Modificato: Torsten
il 15 Ott 2018
if A<=0 & B<=0
...
elseif A<=0 & B>=0
...
elseif A>=0 & B<=0
...
elseif A>=0 & B>=0
...
end
9 Commenti
Jan
il 17 Ott 2018
If A and B are vectors, the expression
if A<=0 & B<=0
is converted internally to:
if all(A(:)<=0 & B(:)<=0) & ~isempty(A) & ~isempty(B)
Writing this explicitly is less confusing in my opinion. Array-valued conditions of if commands are a frequent source of bugs.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!