if loop on array
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
ali hassan
am 7 Feb. 2022
Kommentiert: Image Analyst
am 11 Feb. 2022
i want to use if loop on a array. let say if i have two arrays:
a=[1 2 3 4 5]
b=[2 3 4 5 6]
now if i want to use if loop such that when any value in array 'a' is 3 and corresponding value in array 'b' is 4,it should print 'ali'.
i tried the following code but it did'nt work.
a=[3 4 3 44 3];
b=[4 3 4 34 26];
if (any(a==3) & b==4)
sprintf('ali')
end
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 10 Feb. 2022
Your parentheses are not right. Try it this way
a=[3 4 3 44 3];
b=[4 3 4 34 26];
if any(a==3 & b==4)
fprintf('ali\n')
end
A=[1 2 5 66 7];
B=[6 4 4 77 8];
% if any element in array A is 5 and the corresponding B element is between 2 and 6
if any(A==5 & B>=2 & B<=6)
fprintf('ali')
else
fprintf('No Matches.\n')
end
5 Kommentare
Image Analyst
am 11 Feb. 2022
@ali hassan if you have the Image Processing Toolbox, you can use regionprops():
ff_liter_ho = [nan, 75, 0, nan, nan, nan, nan, nan, nan, nan, 75, 37, nan, 0, 1, 2, 3, 4]
nonZeroIndexes = ff_liter_ho > 0
props = regionprops(nonZeroIndexes, 'Area');
numRuns = length(props)
runLengths = [props.Area]
Weitere Antworten (1)
KSSV
am 7 Feb. 2022
a=[3 4 3 44 3];
b=[4 3 4 34 26];
if (any(a==3))
idx = a == 3 ;
if any(b(idx) == 4 )
fprintf('ali\n')
end
end
4 Kommentare
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!