Comparing elements in one matrix in a loop

5 次查看(过去 30 天)
Hi All,
I have a large matrix with one column containing only values. I want to make a loop and compare every time if the average of 2nd and 1st value is < than a predifined value. When the average of i and j value is > than the predifined value, to show as a result i and j. Thanks in advance!

采纳的回答

KALYAN ACHARJYA
KALYAN ACHARJYA 2018-9-18
编辑:KALYAN ACHARJYA 2018-9-18
A=randi(30,20,1); %Random Matrix for Example
th=12; %Some Predefined value
[rows colm]=size(A);
for i=1:rows-1
c=(A(i,1)+A(i+1,1))/2;
if c > th
fprintf('The i is: %d and the next row i+1 value is: %d \n',i,i+1);
break;
end
end
  12 个评论
KALYAN ACHARJYA
KALYAN ACHARJYA 2018-9-18
编辑:KALYAN ACHARJYA 2018-9-18
The first one only case. I have edited the answer, the added break statement. Please check.
Other c condition also possible, can you clarify more.
Ancalagon8
Ancalagon8 2018-9-18
编辑:Ancalagon8 2018-9-18
for example doing inside the loop the calculation to find c gives a 2-digit-result like
(11+10)/2= 10.5, ....... ,
....., (46+38)/2=42,
(468+46)/2=257 <-- so here break as the result has 3 digits

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by