[ Foro de Python ]

entender la logica detras del ejercicio

10-Dec-2021 17:57
Invitado (Freddy Duran)
0 Respuestas

Hola chicos buenas tardes.
tengo una duda al intentar entender tanto la pregunta como la respuesta de este siguiente caso.

"
Pregunta 3
Considerando que las variables pueden almacenar cualquier tipo de dato, en este ejercicio se utilizaran variables de tipo booleanas. En computación un operador muy conocido es el operador lógico XOR (exclusive OR), el que dadas dos expresiones a y b booleanas, entrega verdadero únicamente si una de ellas es verdadera, y falso en cualquier otro caso.

Por ejemplo si se tiene

resultado = True XOR False

en resultado estará almacenado el valor True, en cambio si se tiene

   resultado = True XOR True    o     resultado = False XOR False

en resultado estará almacenado el valor False.

La tabla de verdad para todos los valores posibles de a y b, es la siguiente:

a

b

a XOR b

True

True

False

True

False

True

False

True

True

False

False

False

Así, utilizando los conocimientos de booleanos adquiridos en el curso, y los conocimientos de operadores lógicos, modifica el código de más abajo, para que en la variable xor quede almacenado el valor de hacer XOR entre las variables a y b.

Para poder resolver este problema , debes escribir el código que falta en el espacio que lo señala. Asume que ya existen variables con los nombres a y b, que ya contienen los valores requeridos (no debes pedírselos al usuario), haz los cálculos que necesites, y luego deja el resultado en una variable llamada xor.


def xor(a, b):
 xor = False
 # desde aquí hacia abajo debes modificar el programa
 # modifica la variable xor
 # recuerda que los datos están en las variables a y b
 return xor
"
en esta misma pagina vi las siguientes respuestas, pero devido a que enrealidad no entiendo lo que pide, no logro entender como se dan estas respuestas

"
Yo lo hice así y me funcionó mira cómo te va a ti, saludos.

def xor(a, b):
xor = False
if bool(a) == bool(b):
  return False
else:
  return a or b
return xor

27-Jul-2020 07:20
Invitado (Jk)

La resolvi asi:


def xor(a, b):
xor = false
xor= (a or b) and not (a and b)
return xor
"
mas que la respuesta necesito que me ayuden a entender el por que.
quedo atento




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)