switch case

Descripción

El switch case nos permite organizar bloques de códigos, de forma que se ejecuten cuando se cumple cierta condición o caso.Su funcionamiento es muy similar a la sentencia if , aunque este permite visualizar y organizar mejor nuestro código.

Sintaxis

switch(variable){
      case label_1:
        //Codigo..
        break;
      case label_2:
        //Codigo..
        break;
      case label_3:
        //Codigo..
        break;
      default:
        //Codigo..
        break;   
    }

Variable: es aquella variable que esta cambiando de estado o valor, y la cual dependiendo de su valor ejecutaremos alguno de los bloques de código.

Label: Es uno de los posibles valores o estados que puede tomar la variable, sí la variable coincide con este valor, se ejecutará el código encontrado aquí.

Break: Indica el final del caso.

Default: Si ninguno de los casos o valores posibles dados por label se cumple, se ejecutan las lineas de código que se encuentra aquí.

Ejemplo

Usando switch case

int x;
void setup() {  

}

void loop() {
  x=3;
  switch(x){
    case 1: // si x=1 encender motores hacia adelante
       goForward(M1,M2);
       break;
    case 2: //si x=2 encender motores hacia atrás
        goReverse(M1,M2);
        break;      
    default: //default apagar motores
        motorsOff(M1,M2);
        break;   
    }

} 
Usando if else

int x;
void setup() {

}

void loop() {
  x=3;
  // si x= 1 encender motores hacia adelante
  if(x == 1){ 
     goForward(M1,M2);
  }
  //si x= 2 encender motores hacia atrás
  else if(x == 2){ 
     goReverse(M1,M2);
  }
  // si no es ninguno de los anteriores apagar motores  
  else{
     motorsOff(M1,M2);  
    }
}
  

 

Los dos ejemplos anteriores cumplen la misma funcionalidad, en ambos casos los motores se detienen, ya que el valor o estado de x es 3.