switch ... case

Lese­zeit: 3 Minu­ten

Genau wie ➨if .. else kann switch – case Abfra­gen durchführen. 

Bei­spiel Abfra­ge einer Zahl:

void setup()
{
  Serial.begin(9600);

  // auf serielle Verbindung warten
  while (!Serial);
  delay(1000);

  // Zufallsgenerator starten
  randomSeed(analogRead(A0));

  // Zufallszahl zwischen 1 und 3 bestimmen
  int Zahl = random(1, 3);
  Serial.print("Zufallszahl: ");

  // Zufallszahl anzeigen
  switch (Zahl)
  {
    case 1:
      Serial.print("1");
      break;

    case 2:
      Serial.print("2");
      break;

    case 3:
      Serial.print("3");
      break;
  }
}
void loop()
{
  // nichts zu tun, Programm läuft nur einmal
}

Bei­spiel Abfra­ge eines Zei­chens (char)

Array

// Array erstellen
char Buchstaben[] = {"aeiou"};

void setup()
{
  Serial.begin(9600);

  // auf serielle Verbindung warten
  while (!Serial);
  delay(1000);

  // Zufallsgenerator starten
  randomSeed(analogRead(A0));

  // Zählung des Arrays beginnt mit 0  
  int Minimum = 0; 

  // Maximum ist die Länge des Arrays (sizeof)
  int Maximum = sizeof(Buchstaben); 

  // Zufallselement bestimmen 
  int Element =  random(Minimum, Maximum);

  // Buchstabe anzeigen 
  switch (Buchstaben[Element])
  {
    case 'a':     
      Serial.print("a");   
      break; 

    case 'e':
      Serial.print("e");    
      break;  

    case 'i':   
      Serial.print("i"); 
      break; 

    case 'o': 
      Serial.print("o");
      break; 
 
    case 'u': 
      Serial.print("u"); 
      break; 
  } 
} 

void loop() 
{ 
  // nichts zu tun, Programm läuft nur einmal
} 

Bei­spiel Abfra­ge eines Wertebereichs:

int Minimum = 1; 
int Maximum = 100; 

void setup() 
{ 
  Serial.begin(9600); 

  // auf serielle Verbindung warten
  while (!Serial);
  delay(1000);

  // Zufallsgenerator starten 
  randomSeed(analogRead(A0));
}

void loop() 
{ 
  int Zahl =  random(Minimum, Maximum); 
  switch (Zahl) 
  { 
    // beachte die Leerstellen vor und hinter den ...
    case 1 ... 20: 
      Serial.println("Die Zahl liegt zwischen 1 und 20!"); 
      break;
 
    case 21 ... 40: 
      Serial.println("Die Zahl liegt zwischen 21 und 40!"); 
      break; 

    case  41 ... 60: 
      Serial.println("Die Zahl liegt zwischen 41 und 60!"); 
      break; 

    case 61 ... 80:
      Serial.println("Die Zahl liegt zwischen 61 und 80!"); 
      break; 

    case 81 ... 100: 
      Serial.println("Die Zahl liegt zwischen 81 und 100!"); 
      break; 
  } 
  delay(2000);
}

if ... else if ... else Operatoren Ope­ra­to­ren Variable Variable

Letzte Aktualisierung: 17. Apr 2024 @ 17:02