How can I find everything between two values?

1 vue (au cours des 30 derniers jours)
Yunming Zhang
Yunming Zhang le 8 Juin 2017
Commenté : Image Analyst le 10 Juin 2017
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.

Réponse acceptée

Image Analyst
Image Analyst le 8 Juin 2017
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 commentaires
Yunming Zhang
Yunming Zhang le 9 Juin 2017
what if I want to go left to right as well as right to left?
Image Analyst
Image Analyst le 10 Juin 2017
What does that mean? If you just want row1 to be the max instead of the min, just swap min and max inside deal().

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by