lunes, noviembre 02, 2015

Algebra booleana y Excel (las funciones Y, O, XO, NOT)

Google celebra los 200 años del nacimiento de George Boole con este doodle

Mis avisados lectores habrán notado las funciones Excel AND (Y en la versión española de Excel), XOR (XO), OR (O) y NOT (NO).

George Boole es considerado el padre del álgebra booleana, una de las bases de la informática. Excel, por supuesto, permite realizar operaciones booleanas contando para eso con las funciones mencionadas (XO disponible en Excel 2013 y posterior).

Me voy a permitir celebrar también el acontecimiento con una breve reseña de estas funciones y algunos de sus usos.

Las funciones booleanas evalúan un número de condiciones y dan como resultado los valores lógicos VERDADERO o FALSO.

Función
Resultado
Observaciones
Y (AND)
VERDADERO si todos los argumentos se evalúan como VERDADERO; devuelve FALSO si uno o más argumentos se evalúan como FALSO.

O (OR)
VERDADERO si alguno de los argumentos es VERDADERO; devolverá FALSO si todos los argumentos son FALSOS.

XO (XOR)
Devuelve un O exclusivo lógico de todos los argumentos (ver el ejemplo más adelante).
Disponible a partir de Excel 2013
NO (NOT)
Invierte el valor lógico del argumento.



Estas funciones nos permiten combinar varias condiciones y evaluar si todas se cumplen, si algunas o ninguna.

En esta hoja muestro la evaluación de tres condiciones en una lista de nombres



Las funciones Y y O son intuitivas. La fórmula en la celda F8 es =Y(C8=$B$4,D8=$C$4,E8>$D$4); podemos ver que sólo una condición se cumple (mayor de 25) por lo que el resultado es FALSO (FALSE). En cambio el resultado en la celda G8, que contiene la fórmula =O(C8=$B$4,D8=$C$4,E8>$D$4), es VERDADERO (TRUE) ya que una de las condiciones se cumplen.

La función XO es menos intuitiva. Como regla general digamos que si el número de condiciones que se cumplen (VERDADERO) es impar el resultado es VERDADERO y si el número es par entonces el resultado es FALSO.
Para dar otro ejemplo del uso de XO supongamos que tenemos una lista de trabajadores donde se señalan los turnos trabajados, mañana y tarde. Si para saber quien ha trabajado jornada parcial usamos la fórmula =XO(C3,D3) en la tabla del ejemplo


No hay comentarios.:

Publicar un comentario

Nota: sólo los miembros de este blog pueden publicar comentarios.