martes, 30 de abril de 2019

Ejercicio sobre operadores lógicos.

Ejercicios sobre operadores lógicos Java
Ejercicio 1: Si X, Y y Z son variables de tipo boolean con valores X = true, Y = false, Z = true, determina el valor de las siguientes expresiones lógicas:

a) (X && Y) || (X && Z)
b) (X || !Y)&& (!X || Z)
c) X || Y && Z 
d) !(X || Y) && Z 
e) X || Y || X && !Z && !Y
f) !X || !Y || Z && X && !Y
Ejercicio 2: Si W, X, Y y Z son variables de tipo boolean con valores W = false, X = true, Y = true, Z = false, determina el valor de las siguientes expresiones lógicas:
a) W || Y && X && W || Z 
b) X && !Y && !X || !W && Y
c) !(W || !Y) && X || Z
d) X && Y && W || Z || X
e) Y || !(Y || Z && W)
f) !X && Y && (!Z || !X)
Para resolver ejercicios con operadores lógicos tienes que conocer las tablas de verdad de estos operadores:

Operador AND

Operador OR

Operador NOT
A
B
A && B

A
B
A || B

A
!A
F
F
F

F
F
F

T
F
F
T
F

F
T
T

F
T
T
F
F

T
F
T



T
T
T

T
T
T



Como puedes observar:
  • El operador lógico && (AND) da como resultado true cuando ambos operandos son true, en cualquier otro caso el resultado es false.
  • El operador || (OR) da como resultado false cuando ambn cualquier otro caso el resultado es true.
  • El operador ! (NOT) cambia el valor lógico del operando.
También debemos tener en cuenta para resolver estos ejercicios cuál es la precedencia de los operadores lógicos en Java:

Precedencia de los operadores lógicos
Mayor precedencia
!
$
&&
Menor Precedencia
||

Soluciones
Solución ejercicio 1:

a) (X && Y) || (X && Z) " true
   (T && F) || (T && T)
       F    ||    T
             T
b) (X || !Y) && (!X || Z) " true
   (T || !F) && (!T || T)
   (T ||  T) && (F  || T)
       T     &&      T
              T
c) X || Y && Z " true
   T || F && T
   T ||   F
     T
d) !(X || Y) && Z " false
   !(T || F) && T
       !T    && T
        F    && T
              F
e) X || Y || X && !Z && !Y " true
   T || F || T && !T && !F 
   T || F || T && F  && T
   T || F ||   F     && T
   T || F ||          F
     T    ||          F
           T
f) !X || !Y || Z && X && !Y " true
   !T || !F || T && T && !F
    F || T  || T && T && T
    F || T  ||   T    && T
    F || T  ||        T
       T    ||        T
             T

Solución ejercicio 2:

a) W || Y && X && W || Z " false
   F || T && T && F || F
   F ||    T   && F || F
   F ||        F    || F
      F             || F
                    F
b) X && !Y && !X || !W && Y " true
   T && !T && !T || !F && T
   T && F  && F  ||  T && T
      F    && F  ||  T && T
            F    ||    T
                  T
c) !(W || !Y) && X || Z " true
   !(F || !T) && T || F
   !(F ||  F) && T || F
       !F     && T || F
        T     && T || F
              T    || F
                   T
d) X && Y && W || Z || X " true
   T && T && F || F || T
     T    && F || F || T
          F    || F || T
                F   || T
                    T
e) Y || !(Y || Z && W) " true
   T || !(T || F && F)
   T || !(T ||    F  )
   T || !(   T       )
   T || F
     T
f) !X && Y && (!Z || !X) " false
   !T && T && (!F || !T)
    F && T && (T  ||  F)
    F && T &&     T
      F    &&     T
            F

No hay comentarios:

Publicar un comentario