Well, actually:
(A>=100 && (B<100 || B<A))
matches with:
(A>=100 && B<A)
This is because if B < 100, it is automatically less than Ac A >= 100, and here is the code that proves it (in C, but C # should be the same):
#include <stdio.h>
static void test (int a, int b) {
printf ("a=%3d, b=%3d : ok=%d\n", a, b,
(a>=100 && (b<100 || b<a)) == (a>=100 && b<a));
}
int arr[] = {1,2,3,99,100,101,199,200,201};
int main (void) {
int i, j;
for (i = 0; i < sizeof(arr)/sizeof(*arr); i++) {
for (j = 0; j < sizeof(arr)/sizeof(*arr); j++) {
test (arr[i], arr[j]);
}
}
return 0;
}
It outputs:
a= 1, b= 1 : ok=1
a= 1, b= 2 : ok=1
a= 1, b= 3 : ok=1
a= 1, b= 99 : ok=1
a= 1, b=100 : ok=1
a= 1, b=101 : ok=1
a= 1, b=199 : ok=1
a= 1, b=200 : ok=1
a= 1, b=201 : ok=1
a= 2, b= 1 : ok=1
a= 2, b= 2 : ok=1
a= 2, b= 3 : ok=1
a= 2, b= 99 : ok=1
a= 2, b=100 : ok=1
a= 2, b=101 : ok=1
a= 2, b=199 : ok=1
a= 2, b=200 : ok=1
a= 2, b=201 : ok=1
a= 3, b= 1 : ok=1
a= 3, b= 2 : ok=1
a= 3, b= 3 : ok=1
a= 3, b= 99 : ok=1
a= 3, b=100 : ok=1
a= 3, b=101 : ok=1
a= 3, b=199 : ok=1
a= 3, b=200 : ok=1
a= 3, b=201 : ok=1
a= 99, b= 1 : ok=1
a= 99, b= 2 : ok=1
a= 99, b= 3 : ok=1
a= 99, b= 99 : ok=1
a= 99, b=100 : ok=1
a= 99, b=101 : ok=1
a= 99, b=199 : ok=1
a= 99, b=200 : ok=1
a= 99, b=201 : ok=1
a=100, b= 1 : ok=1
a=100, b= 2 : ok=1
a=100, b= 3 : ok=1
a=100, b= 99 : ok=1
a=100, b=100 : ok=1
a=100, b=101 : ok=1
a=100, b=199 : ok=1
a=100, b=200 : ok=1
a=100, b=201 : ok=1
a=101, b= 1 : ok=1
a=101, b= 2 : ok=1
a=101, b= 3 : ok=1
a=101, b= 99 : ok=1
a=101, b=100 : ok=1
a=101, b=101 : ok=1
a=101, b=199 : ok=1
a=101, b=200 : ok=1
a=101, b=201 : ok=1
a=199, b= 1 : ok=1
a=199, b= 2 : ok=1
a=199, b= 3 : ok=1
a=199, b= 99 : ok=1
a=199, b=100 : ok=1
a=199, b=101 : ok=1
a=199, b=199 : ok=1
a=199, b=200 : ok=1
a=199, b=201 : ok=1
a=200, b= 1 : ok=1
a=200, b= 2 : ok=1
a=200, b= 3 : ok=1
a=200, b= 99 : ok=1
a=200, b=100 : ok=1
a=200, b=101 : ok=1
a=200, b=199 : ok=1
a=200, b=200 : ok=1
a=200, b=201 : ok=1
a=201, b= 1 : ok=1
a=201, b= 2 : ok=1
a=201, b= 3 : ok=1
a=201, b= 99 : ok=1
a=201, b=100 : ok=1
a=201, b=101 : ok=1
a=201, b=199 : ok=1
a=201, b=200 : ok=1
a=201, b=201 : ok=1
, , , && , || #, :
(A>=100 && (B<100 || B<A))