Setting limits using If statements
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Consider a random matrix:
A=[1.8 2.6 3.4 4.0 7.2]
[0.5 0.4 0.3 0.2 0.1]
I want to write a code that scans through A and does something if some conditions against parameters P1 and P2 are satisfied. Could somebody help me convert my pseudo code into a MATLAB script.
-----------------------------------------------------------------------------------
Pseudocode
-----------------------------------------------------------------------------------
P1=3.5;
P2=0.39;
for i=1 : (number of rows)
if an element A(i,:) is greater than or equal to P1
store all the elements from A(i,:) that come before P1;
but if an element A(i,:) is less than or equal to P2
store all the elements from A(i,:) that comes before P2;
end if
end for
-----------------------------------------------------------------------------------
Expected Output:
StoredElements = [ 1.8 2.6 3.4 ]
[ 0.5 0.4 ]
-----------------------------------------------------------------------------------
0 Commenti
Risposte (1)
KSSV
il 11 Lug 2017
This is pretty simple...you need not to run a loop. Read about find. http://in.mathworks.com/help/matlab/ref/find.html.
Also you can use the logical indexing. Ex..to get all the values in A which are less then or equal to p1..use
store = A(A(<=p1)
2 Commenti
Vedere anche
Categorie
Scopri di più su Logical 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!