Tema 5. Condicionales

Uso de operadores lógicos y de comparación para utilizar sentencias condicionales.

DATOS BOOLEANOS

Al comparar dos variables o utilizar operadores lógicos, el resultado será siempre un dato de tipo Boolean.

Tablas de verdad

Dadas dos variables lógicas, A y B, podemos definir los operadores básicos mediante tablas de verdad, donde el valor verdadero se representa con la letra V o bien con un 1, mientras que el valor falso se representa mediante la letra F o bien con un 0.

La tabla de verdad para la variable A sería

A

V

F

La tabla de verdad para la variable B sería

B

V

F

Negación

El operador negación aplicado a una variable (unario) se representa con ¬ y devuelve el valor contrario. Equivalente a NO.

A
¬ A

V

F

F

V

Conjunción

La conjunción entre dos variables se representa con ∧ y devuelve verdadero únicamente cuando ambas variables valen verdadero. Equivalente a Y.

A
B
A ∧ B

V

V

V

V

F

F

F

V

F

F

F

F

Disyunción

La disyunción entre dos variables se representa con ∨ y devuelve verdadero cuando al menos una de las variables lógicas vale verdadero. Equivalente a O.

A
B
A ∨ B

V

V

V

V

F

V

F

V

F

F

F

Operadores lógicos

Los operadores lógicos son aquellos que nos permiten implementar las tablas de verdad en código Kotlin:

Negación (NOT)

Se utiliza el operador "!" para la negación:

Conjunción (AND)

Se utiliza el operador "&&" para la conjunción:

Disyunción (OR)

Se utiliza el operador "||" para la disyunción:

Operadores de comparación

Los operadores de comparación nos permiten comparar datos y obtener resultados booleanos:

Operador

Significado

>

Estrictamente mayor

>=

Mayor o igual

<

Estrictamente menor

<=

Menor o igual

==

Igual

!=

Diferente

IF / ELSE IF / ELSE

if

Cuando queremos comprobar si se cumple alguna condición, utilizamos el operador de decisión if. SOLO SE EJECUTA SI EL RESULTADO DE LA CONDICIÓN ES TRUE. La sintaxis que debemos seguir es la siguiente:

else

En un bloque if, si no se cumple la condición, no se ejecuta el código. Lo normal es que queramos que, si no se cumple la condición, se ejecute un bloque de código diferente. Para ello se utiliza el bloque else.

else if

También puede darse el caso de que existan más de dos escenarios, para ello utilizamos un bloque else if que presenta una segunda condición que, de no cumplirse la primera, será comprobada antes de saltar al bloque else.

Un ejemplo de su uso podría ser:

WHEN

Se puede dar el caso de que necesitemos ejecutar un bloque de código en función del valor de una variable o del valor que devuelva una sentencia.

Para evitar la repetición de bloques if con la misma condición y cambiando el valor, se implementó el bloque condicional when. Su sintaxis es la siguiente:

Un ejemplo de su aplicación puede ser:

Los bloques if y when se pueden anidar unos dentro de otros, llegando a alcanzar estructuras muy complejas y poderosas.

Last updated