# data[].attributes.body
Estructuras de decisión: se refiere al camino que debe realizar el programa cuando existe una variable que divide la secuencia de los códigos en dos.

-if: se usa cuando una variable alcanzó alguna condición

-else: permite la elección de varias condiciones

-switch-case: se utiliza cuando se necesita que el programa tome una decisión sobre una instrucción muy precisa

Estructuras de repetición: permiten que el programa ejecute las instrucciones de manera repetida

-for: permite repetir las secuencias de los códigos que se encuentren entre llaves las veces

-while: permite que un bucle sea ejecutado de manera continua

-do while: se utiliza al igual que while siempre y cuando se ubique al final del bloque

-goto: permite que el programa sea transferido a otro punto

-break: se utiliza para salir a la estructura de control

-continue: reanuda las secuencias programadas

# data[].attributes.attachment_caption
(Como se observa, la tabulación ordenada permite ver con claridad cada punto del código que se quiere expresar)

# data[].attributes.headline
¿Para qué sirven las estructuras de control en Arduino?

# data[].attributes.subject
¿Para qué sirven las estructuras de control en Arduino?

# data[].attributes.body
Estas instrucciones permiten romper la secuencia métodica de los códigos, es decir una forma diferente y práctica de presentar los códices. Deja una buena administración y lectura en las formas utilizadas para expresar cada valor. Facilita, además, el reconocimiento rápido de errores o encontrar las secuencias que se deseen repetir.

# data[].attributes.body
if (x > 120) digitalWrite(LEDpin, HIGH);

if (x > 120)

digitalWrite(LEDpin, HIGH);

if (x > 120) {digitalWrite(LEDpin, HIGH);}

if (x > 120) {

digitalWrite(LEDpin1, HIGH);

digitalWrite(LEDpin2, HIGH);

}

# data[].attributes.body
if (temperature >= 70) {
  // Danger! Shut down the system.
}
else if (temperature >= 60) { // 60 <= temperature < 70
  // Warning! User attention required.
}
else { // temperature < 60
  // Safe! Continue usual tasks.
}

# data[].attributes.body
switch (var)
{
case 1
//hace algo cuando var es igual a 1
break

case 2
//hace algo cuando var es igual a 2
break
}

# data[].attributes.body
 for (int thisPin = 2; thisPin < 8; thisPin++) {
    pinMode(thisPin, OUTPUT);
  }

# data[].attributes.body
var =  0;

while(var < 200){

// repite algo 200 veces

var++;

}

# data[].attributes.body
int x = 0;

do {

delay(50); // para esperar que se estabilice el sensor

x = readSensors(); // lectura de los sensores

} while (x < 100);

# data[].attributes.body
for (byte g = 255; g > 0; g--) {

for (byte b = 0; b < 255; b++) {

if (analogRead(0) > 250) {

goto bailout;

}

// más declaraciones de códigos del programa

}

}

}

bailout:

// más declaraciones

# data[].attributes.body
int threshold = 40;

for (int x = 0; x < 255; x++) {

analogWrite(PWMpin, x);

sens = analogRead(sensorPin);

if (sens > threshold) { // rescatar en la detección del sensor

x = 0;

break;

}

delay(50);

}

# data[].attributes.body
for (int x = 0; x <= 255; x ++) {

if (x > 40 && x < 120) { // crear salto en los valores

continue;

}

analogWrite(PWMpin, x);

delay(50);

}