Aufgabenstellung auf ../../if-case-challenge.html

Aufgabe 1: Stundenplan mit switch/case

Schreiben Sie einen Stundenplan für einen ganzen Tag Webdesign mithilfe von switch/case:

8.00 bis 10.00HTML lernen
10.01 bis 11.00Pause
11.01 bis 12.00CSS lernen
12.01 bis 13.00Pause
13.01 bis 15.00JavaScript lernen
15.01 bis 16.00Pause
16.01 bis 17.00Übungen
zwischen 17.01 bis 8.00Kein Unterricht

Legen Sie die Stunde als Fließkommazahl fest, z.B. const hour = 17.18;. Dabei entstehen sieben case-Fälle.

Beispiellösung

const hour = 7.15;

switch (true) {
   case (hour >= 8 && hour <= 10) :
      console.log ("HTML lernen");
      break;

   case (hour > 10 && hour <= 11) :
      console.log ("Pause");
      break;

   case (hour > 11 && hour <= 12) :
      console.log ("CSS lernen");
      break;

   case (hour > 12 && hour <= 13) :
      console.log ("Pause");
      break;

   case (hour > 13 && hour <= 15) :
      console.log ("JavaScript lernen");
      break;

   case (hour > 15 && hour <= 16) :
      console.log ("Pause");
      break;

   case (hour > 16 && hour <= 17) :
      console.log ("Übungen");
      break;

   default: 
      console.log ("Kein Unterricht");
}

Aufgabe 2: Pausen zu einem case zusammenlegen

Fassen Sie die Pausen zu einem case mithilfe eines logischen || (Oder) zusammen.

Beispiellösung

const hour = 7.15;

switch (true) {
   case (hour >= 8 && hour <= 10) :
      console.log ("HTML lernen");
      break;

   case ((hour > 10 && hour <= 11) || (hour > 12 && hour <= 13 )|| (hour > 15 && hour <= 16)) :
      console.log ("Pause Aufgabe 2");
      break;

   case (hour > 11 && hour <= 12) :
      console.log ("CSS lernen");
      break;

   case (hour > 13 && hour <= 15) :
      console.log ("JavaScript lernen");
      break;

   case (hour > 16 && hour <= 17) :
      console.log ("Übungen");
      break;

   default: 
      console.log ("Kein Unterricht");
}

Aufgabe 3: Verwenden Sie if/else

Programmieren Sie den Stundenplan mithilfe von if/else anstelle von switch/case. Was fällt Ihnen leichter? Sehen Sie sich Ihre Lösung oder die Beispiellösung in ein paar Tagen noch einmal an. Welche der beiden Varianten können Sie besser nachvollziehen?

Beispiellösung

const hour = 7.15;
if (hour >= 8 && hour <= 10) {
   console.log ("HTML lernen");
} else if (hour > 10 && hour <= 11 || hour > 12 && hour <= 13 || hour > 15 && hour <= 16) {
   console.log ("Pause");
} else if (hour > 11 && hour <= 12) {
   console.log ("CSS lernen"); 
} else if (hour > 13 && hour <= 15) {
   console.log ("JavaScript lernen");
} else if (hour > 16 && hour <= 17) {
   console.log ("Übungen");
} else {
   console.log ("Kein Unterricht");
}