Diferencia entre revisiones de «if... else»
(→Comentarios) |
(→Advertencias) |
||
Línea 40: | Línea 40: | ||
== Advertencias == | == Advertencias == | ||
− | + | * No confundir una [[comparacion]] (<nowiki>==</nowiki>) con [[asignacion]] (<nowiki>=</nowiki>). | |
== Comentarios == | == Comentarios == |
Revisión del 00:21 28 jul 2018
Contenido
Descripción
El condicional if() permite un mayor control del flujo de código al permitir ejecutar o no un grupo de instrucciones según el resultado de una condición.
Además se puede usar else dentro de las llaves de modo que, si la condición es falsa, se ejecute un segundo juego de códigos.
También se puede anidar condicionales simples con else if(), de manera que se pueden establecer varias estructuras condicionales anidadas de forma que sean mutuamente excluyentes. Recuerde sin embargo qué sólo un conjunto de declaraciones se llevará a cabo dependiendo de las condiciones impuestas.
Nota: Tenga en cuenta que un bloque if() se puede usar con o sin un bloque else y viceversa. Se permite un número ilimitado de ramificaciones usando else if().
Sintaxis
Condicional simple
if (condicion) { //Ejecuta si condición es verdadera }
Condicional compuesta
if (condicion) { //Ejecuta si condición es verdadera }else{ //Ejecuta si condición es falsa }
Condicionales anidadas
if (condicion 1) { //Ejecuta si condición 1 es verdadera }else if (condicion 2){ //Ejecuta si condición 1 es falsa y condicional 2 es falsa }else{ //Ejecuta si ambas condiciónes son falsa }
Parámetros
- condición
- es una expresión que se evalúa como verdadera o falsa.
Advertencias
- No confundir una comparacion (==) con asignacion (=).
Comentarios
- Si se omiten las llaves solo se ejecuta una instrucción.
Nota: Se puede poner varias expresiones unidas por los operadores lógicos or o and.
Ejemplo 1
Se puede comprobar una entrada analógica y realizar una acción si el valor de la entrada es menor que 500 y realizar otra acción distinta si la entrada es 500 o mayor.
if (analogRead(A3) < 500) { //acción A }else{ //acción B }
Ejemplo 2
Aquí usamos dos comparaciones con distintas expresiones.
if (analogRead(A3) < 500){ //instrucciones A }else if (digitalRead(13)){ //instrucciones B }else{ //instrucciones C }
Ejemplo 3
Algunos ejemplos