Es la diferencia entre OR y AND.
if((depart!=dep1)||(depart!=dep2)||(depart!=dep3))
Esto dice “si la partida no es dep1 O la partida no es dep2 O la partida no es dep3”. Dado que dep1, dep2 y dep3 no son todos iguales, esto siempre será cierto.
En cambio, lo que desea es “si la partida no es dep1 Y la partida no es dep2 Y la partida no es dep3” o (la misma redacción diferente) “la partida no es dep1 O dep2 O dep3”.
- ¿Cuánto tiempo se necesita para prepararse para un MBA?
- ¿Cómo hacer para publicar un trabajo de investigación? ¿Cuáles son los pasos en todo este proceso, comenzando por lo básico?
- ¿Las universidades europeas requieren cartas de recomendación para su programa de maestría?
- Estoy interesado en la ingeniería petrolera. ¿Cuáles son algunos prestigiosos colegios / universidades en la India?
- Soy un estudiante de último año de B.Tech CS de un reputado NIT. Mi historial académico es malo. Ni siquiera estoy colocado. ¿Qué debería hacer ahora?
Esos serían
if (depart != dep1 && depart != dep2 && depart != dep3)
y
if ( !(depart == dep1 || depart == dep2 || depart == dep3) )
respectivamente.
(Puede ir y venir entre esas dos formas utilizando las leyes de DeMorgan, que en realidad son ocasionalmente útiles: http://en.wikipedia.org/wiki/De_…)
Nota al margen: probablemente sea útil decir cuál es el problema en lugar de simplemente sugerir que tiene un error.