if (condicional) y ==, !=, <, > (operadores de comparación)
La estructura if comprueba si la condición contenida entre paréntesis ( ) se ha cumplido, como por ejemplo si una entrada supera un cierto número. El formato de la comprobación que se realiza en el if es:
if (nombre_variable > 50) {
// instrucciones que se ejecutarán si se cumple la condición
}
El código del ejemplo comprueba si la variable "nombre_variable" es más grande que 50:
-Si es así, el programa realiza las instrucciones descritas dentro de las llaves {}.
-Si la condición no se cumple, el programa salta el código escrito entre las llaves {} y continúa ejecutando lo que hay después.
Tenemos que usar un operador o varios de entre:
x == y (x es igual a y) x != y (x no es igual a y) x < y (x es menor que y) x > y (x es mayor que y) x <= y (x es menor que o igual a y) x >= y (x es mayor que o igual a y)
if también nos permite comprobar varias condiciones usando la estructura if...else,.
Ejemplo: Vamos a comprobar una entrada analógica, si el valor es menor que 500 haremos una cosa y otra si su valor es 500 o más, haremos otra cosa.
if (pinFiveInput < 500)
{
// hacer unas cosas - pinFiveInput vale menos de 500
}
else
{
// hacer otras cosas - pinFiveInput vale 500 o más
}
else también puede anidarse con otro if, y así pueden ejecutarse al mismo tiempo múltiples comprobaciones mutuamente excluyentes, por ejemplo:
Si la variable es menor a 500 hacemos una cosa, si es mayor o igual a 1000 hacemos otra, y si no, otra.
if (pinFiveInput < 500) {
// hacer cosa A - pinFiveInput valdrá menos de 500
} else if (pinFiveInput >= 1000) {
//hacer cosa B - pinFiveInput será igual o mayor que 1000
} else {
//hacer cosa C - pinFiveInput valdrá más de 500 pero menos de 1000
}
Se pueden hacer un número ilimitado de ramificaciones.
En la condición del if hay que tener cuidado de no usar accidentalmente el operador "=" en lugar del operador "==". El operador "=" asigna el valor a una variable: por ejemplo, la sentencia
if (x = 10) {
asigna el valor 10 a la variable x sobreescribiendo el valor que tuviera la variable con anterioridad, sin embargo
if (x == 10) {
sí realiza la comprobación de si x es igual a 10 o no.
La última expresión es únicamente verdadera si x es igual a 10, mientras que la anterior será siempre verdadera y además nos "machaca" el valor que tuviera la variable.