Unidad 2 Laboratorio 3: Tomar decisiones, Página 2

Combinar predicados

En esta página, combinarás predicados usando funciones booleanas para escribir en el escenario en tres colores.

Funciones booleanas

En el nivel más bajo, los circuitos de la computadora están hechos de cables, y cada cable está encendido o apagado. Entonces, las únicas operaciones que se pueden realizar en ese nivel más bajo son aquellas que opera en valores de un solo bit (solo unos y ceros, es decir, solo encendidos y apagados). Estas son llamadas funciones lógicas (o booleanas). (Son predicados, porque su rango es booleano, pero estos son especiales porque su dominio también es booleano.) Hay tres funciones booleanas en la paleta Operadores:
bloques y, o, no

AAP-2.F.5, AAP-2.F.1
Ten en cuenta que tanto los bloques como las ranuras de entrada en los bloques son hexagonales. Las funciones booleanas toman valores booleanos (Verdadero o Falso) como entradas y reportan un nuevo valor booleano como salida. Cuando usas funciones booleanas en un programa, las entradas serán, normalmente, expresiones como variable = 3.

  1. Experimenta con diferentes valores de entrada en los tres bloques y toma notas sobre los resultados que te dan.

    En lugar de arrastrar un bloque verdadero o falso a la ranura de entrada de los bloques y, o, o no, puedes hacerle clic en la ranura de entrada vacía para controlar el interruptor de verdarero/falso: (verdadero) y (falso)

Los bloques y y no funcionan exactamente de la manera que esperarías de los significados de esas palabras en español:

AAP-2.F.4
Pero o es un poco diferente en informática. En español, la palabra "o" tiene dos significados diferentes:

  1. Experimenta. ¿El bloque () o () implementa un o exclusivo o inclusivo?
AAP-2.F.1
Los bloques () y (), () o (), y no () aparecerán en inglés como
AND
,
OR
y
NOT
y funcionarán exactamente de la misma manera que lo hacen en Snap!.
  1. Crea los bloques less than or equal, mayor o igual a y () distinto a (). (Puedes copiar los caracteres ≤, ≥ y ≠ de esta página y pegarlos en la ventana de Snap! llamada Crear bloque).
  2. Vas a crear un predicado que indica si una entrada está entre otras dos entradas y pruébelo con varios casos diferentes.
    Puedes decidir si entre incluirá los números de las dos entradas o no.
    ¿El número (3.8) está entre (3.9) y (4.7) ? reporta falso ¿ (manzana) está entre (mango) y (martes) ? reporta verdadero

    Hacer un predicado

    • Elige el predicado con la forma hexagonal.
      Crea un bloque de diálogo que destaque el botón Predicado
    • Debes usar el bloque reportar() para reportar el resultado de los reporteros (incluyendo predicados).
  3. Usa entre para crear un guion que te permita escribir en el escenario en tres colores (dependiendo de la altura del escenario), usando el ratón.
  4. AAP-2.E parte b
    Autoevaluación
    No hay un bloque ≤ incorporado en Snap!. Supongamos que quisiéramos construir uno. ¿Cuáles dos de las siguientes expresiones booleanas son equivalentes a la expresión núm menor o igual a predicado 23?
    Este es tu intento n.º 1.
  5. AAP-2.F parte b
    Autoevaluación
    ¿Cuál de las siguientes expresiones reportará verdadero?
    1. (T y F) y (no (T y F))
    2. (no (T o F)) o (T o F)
    Este es tu intento n.º 1.
Llevándolo más allá
  1. Debido a que solo hay dos valores booleanos (verdadero y falso), solo hay cuatro combinaciones de entradas para un operador booleano de dos entradas. Aquí están las cuatro combinaciones que se muestran con el operadoro:
    o (verdadero) (verdadero)
    o (verdarero) (falso)
    o (falso) (verdarero)
    o (falso) (falso)
    1. Con o, las cuatro combinaciones reportan verdadero, verdadero, falso y falso, en ese orden. (Comprueba por ti mismo que eso sea cierto.) De esta forma, puedes representar la función o como VVVF (usando V y F como abreviaturas de verdadero y falso). ¿Cuáles son las cuatro letras para la función y? (Utiliza el mismo orden de las entradas: VV, VF, FV, y FF como se muestra arriba con o.)
    2. Inventa otra combinación de cuatro letras (como VFVF) y construye una función de predicado con ese comportamiento. Describe cómo se comporta la función.
      Haz clic para ver un ejemplo que muestra y describe el comportamiento de VFVF.
      (verdadero) VFVF (verdadero) reporta verdadero
      (verdadero) VFVF (falso) reporta verdadero
      (falso) VFVF (verdadero) reporta verdadero
      (falso) VFVF (falso) reporta false La función VFVF reporta verdadero siempre que la segunda entrada sea verdadera, sin importar cuál sea la primera entrada. No es una función útil porque podría usar la segunda entrada como predicado en lugar de construir esta función de predicados.
    3. Haz lo mismo con otra combinación de cuatro letras.
    4. ¿Cuántos posibles operadores booleanos de dos entradas hay?
    5. Habla con tu compañeroObviamente, VVVF (la función o) es útil, pero VVVV no es útil (¿por qué no?). ¿Cuál de los posibles operadores booleanos de dos entradas crees que sería útil? Reflexiona por qué.
    6. ¿Cuántos operadores booleanos de tres entradas hay?