Una decisión binaria es una elección entre dos alternativas, por ejemplo, entre tomar una acción específica o no tomarla. [1]
Las decisiones binarias son básicas para muchos campos. Ejemplos incluyen:
- Valores de verdad en lógica matemática y el correspondiente tipo de datos booleanos en informática, que representan un valor que puede elegirse como verdadero o falso. [2]
- Declaraciones condicionales (si-entonces o si-entonces-si no) en informática, decisiones binarias sobre qué pieza de código ejecutar a continuación. [3]
- Árboles de decisión y diagramas de decisión binarios , representaciones de secuencias de decisiones binarias. [4]
- Elección binaria , un modelo estadístico para el resultado de una decisión binaria. [5]
Diagramas de decisión binarios
Un diagrama de decisión binaria (BDD) es una forma de representar visualmente una función booleana. Una aplicación de los BDD es el software CAD y el análisis de circuitos digitales, donde son una forma eficiente de representar y manipular funciones booleanas. [6]
El valor de una función booleana se puede determinar siguiendo una ruta en su BDD hasta una terminal, tomando una decisión binaria en cada nodo donde se sigue una línea sólida si el valor de la variable en el nodo es verdadero y una línea de puntos si es falso. Se dice que un BDD está "ordenado" si el orden de las variables probadas es fijo. Se dice que un BDD se 'reduce' si se cumplen las dos condiciones siguientes:
- Cada sucesor de cada nodo es distinto.
- No hay dos nodos distintos de la misma variable con los mismos sucesores. [7] [8]
Los BDD que están ordenados y reducidos pueden denominarse Diagramas de decisión binaria ordenados reducidos (ROBDD). Un ejemplo de ROBDD es la figura de la derecha, que representa la función. El orden de las variables a lo largo de cualquier camino es siempre, , luego , todos los nodos tienen sucesores distintos y no hay dos nodos de la misma variable y los mismos sucesores.
Declaraciones condicionales
En informática, las declaraciones condicionales se utilizan para tomar decisiones binarias. [9] Un programa puede realizar diferentes cálculos o acciones dependiendo de si un determinado valor booleano se evalúa como verdadero o falso.
La construcción if-then-else es una declaración de flujo de control que ejecuta uno de dos bloques de código dependiendo del valor de una expresión booleana, y su estructura se ve así:
si la condición entonces bloque de código 1demás bloque de código 2final
La expresión condicional es condition
, y si es verdadera, entonces code block 1
se ejecuta; de lo contrario, code block 2
se ejecuta. También es posible combinar varias condiciones con la construcción else-if:
si la condición 1 entonces bloque de código 1de lo contrario, si la condición 2 entonces bloque de código 2demás bloque de código 3final
Esto se puede representar mediante el diagrama de flujo de la derecha. Si se determina que una condición es verdadera, el resto se omite, por lo que solo se puede ejecutar uno de los tres bloques de código anteriores.
Un ciclo while es una declaración de flujo de control que ejecuta un bloque de código repetidamente hasta que su expresión booleana se vuelve falsa, tomando una decisión sobre si continuar repitiendo antes de cada ciclo. Esto es similar a la construcción if-then, pero puede ejecutar un bloque de código varias veces.
Ver también
Referencias
- ^ Nieve, Roberta M .; Phillips, Paul H. (2007), Tomando decisiones críticas: Una guía práctica para organizaciones sin fines de lucro , John Wiley & Sons, p. 44, ISBN 9780470185032.
- ^ Dixit, JB (2009), Fundamentos informáticos y programación en C , Firewall Media, p. 61, ISBN 9788170088820.
- ^ Yourdon, Edward (19 de marzo de 1975), "El pensamiento claro es vital: los IF anidados no son una trama malvada que conduce a errores de programa" , Computerworld : 15.
- ^ Clarke, EM; Grumberg, Orna ; Peled, Doron (1999), Model Checking , MIT Press, pág. 51, ISBN 9780262032704.
- ^ Ben-Akiva, Moshe E .; Lerman, Steven R. (1985), Análisis de elección discreta: teoría y aplicación a la demanda de viajes , Estudios de transporte, 9 , MIT Press, p. 59, ISBN 9780262022170.
- ^ Kukreja, Jyoti. "Aplicación del diagrama de decisión binaria en el análisis de circuitos digitales". S2CID 13980719 . Cite journal requiere
|journal=
( ayuda ) - ^ Pfenning, Frank (28 de octubre de 2010). "Notas de la conferencia sobre diagramas de decisión binarios" (PDF) . Escuela de Ciencias de la Computación Carnegie Mellon . Consultado el 26 de mayo de 2020 .
- ^ "Diagramas de decisión binaria" (PDF) . Dep. Ciencias de la Computación - Universidad de Verona . Consultado el 26 de mayo de 2020 .
- ^ "Programación - Condicionales" . www.cs.utah.edu . Consultado el 26 de mayo de 2020 .