evaluate whether a condition is met

1 Ansicht (letzte 30 Tage)
Max
Max am 27 Nov. 2012
Hi all, I have to evaluate whether a condition is met: this is the basic method:
if a1 < b1 < a2
disp ('ok')
else disp ('error')
end
If I had n "b" and n+1 "a" I should write n if or is there a way to simplify it? if so how? thank you very much
  1 Kommentar
Matt J
Matt J am 27 Nov. 2012
Bearbeitet: Matt J am 27 Nov. 2012
I assume you really mean
if a1 < b1 & b1 < a2
disp ('ok')
else disp ('error')
end

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 27 Nov. 2012
Bearbeitet: Matt J am 27 Nov. 2012
Assuming size(a) is [1,n+1] and size(b) is [1,n]
if a(1:end-1)<b & b<a(2:end)

Weitere Antworten (2)

Max
Max am 27 Nov. 2012
Perfect! Now, for example, If during the second cycle the condition is not satisfied, the overall result will be error; it is possible to print statements that do not meet this condition?
I hope I was clear ;)
Max

Max
Max am 27 Nov. 2012
Sorry Matt J, I read only now you precondition that
a1 < b1 & b1 < a2
in my situation I have to evaluate if a value is in-range or is out-range. the value have to be in its range
For example:
a_1 < b_1 < a_2
a_2 < b_2 < a_3
a_n < b_n < a_n+1
etc.
and
b_1 = a_1 + x_1
b_2 = a_2 + x_2
b_n = a_n + x_n
etc
x is a column-vector of n elements;
is correct if I do:
if a(1:end-1) < (a(1:end-1) + x(1:end) ) < a(2:end-1)
  6 Kommentare
Matt J
Matt J am 28 Nov. 2012
You should post this as a new question and make it clearer. We would probably need a specific example showing the output that you want.
Max
Max am 28 Nov. 2012
ok ;)

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by