How can I find everything between two values?

1 次查看(过去 30 天)
let's say I have the array and I was given another 2 X N array for the location of a value in the array
  • a b c d
  • e f g h
  • i j k l
  • how do I find values between two values using for loop, for example: how to I find 'e' if I was given the location of a&i, and find'b c' with the location of a and d. The two known values will always be in the same row or column.

采纳的回答

Image Analyst
Image Analyst 2017-6-8
Try this, with your two coordinates (row1, col1) and (row2, col2)
if row1 == row2 % Rows are equal
output = m(row1, col1+1:col2-1);
else % Columns are equal
output = m(row1+1:row2-1, col1);
end
You'll have to check and make sure that 1 and 1 are not the same row and column so that there is actually something in between them. And make sure that 2 has larger columns or rows than 1. I didn't put in that kind of pre-validation of the row and column indexes but it's easy to do.
  4 个评论
Yunming Zhang
Yunming Zhang 2017-6-9
what if I want to go left to right as well as right to left?
Image Analyst
Image Analyst 2017-6-10
What does that mean? If you just want row1 to be the max instead of the min, just swap min and max inside deal().

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by