Filter löschen
Filter löschen

if loop on array

2 Ansichten (letzte 30 Tage)
ali hassan
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

Akzeptierte Antwort

Image Analyst
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
ali
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
ali
  5 Kommentare
ali hassan
ali hassan am 11 Feb. 2022
here we have a vector column 'FF_liter_ho_'.If i want to know that how many times non zero values were greater than 770 in a row.
so it happened only once in the column.
Image Analyst
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]
ff_liter_ho = 1×18
NaN 75 0 NaN NaN NaN NaN NaN NaN NaN 75 37 NaN 0 1 2 3 4
nonZeroIndexes = ff_liter_ho > 0
nonZeroIndexes = 1×18 logical array
0 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1
props = regionprops(nonZeroIndexes, 'Area');
numRuns = length(props)
numRuns = 3
runLengths = [props.Area]
runLengths = 1×3
1 2 4

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

KSSV
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
ali hassan
ali hassan am 10 Feb. 2022
assume, i have an array
A=[1 2 5 66 7] and B=[6 4 4 77 8]
i want to put if condition such that if any element in array A is 5 and the corresponding is between 2 and 6, i want to know how many times the condition meets.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by