Menu
Coddy logo textTech

Bereiche in Switch

Teil des Abschnitts Logik & Kontrollfluss der Swift-Journey von Coddy. Lektion 10 von 56.

Du hast in den Grundlagen switch mit Bereichen verwendet. Derselbe Trick lässt sich auf echte Klassifizierungsprobleme übertragen, bei denen jeder Fall einen Wertebereich abdeckt.

let temp = 22
switch temp {
case ..<0:        print("freezing")
case 0..<10:      print("cold")
case 10..<20:     print("mild")
case 20..<30:     print("warm")
default:           print("hot")
}
// warm

Der erste case ..<0 verwendet die Form eines einseitigen Bereichs: „jeder Wert, der strikt kleiner als 0 ist“. Du kannst auch 0... verwenden, um „0 oder größer“ zu bedeuten.

Fälle werden von oben nach unten geprüft, und die erste Übereinstimmung gewinnt. Ordne sie daher von niedrig nach hoch (oder verwende default für den catch-all-Fall).

challenge icon

Aufgabe

Anfänger

Lies eine einzelne ganze Zahl aus der Eingabe ein: eine Temperatur in Celsius. Gib mithilfe eines einzelnen switch mit Bereichsfällen eines dieser Labels aus:

  • Unter 0 (negative Werte): freezing
  • 0...9: cold
  • 10...19: mild
  • 20...29: warm
  • 30...39: hot
  • 40 und darüber: scorching

Für die Eingabe 22 lautet die Ausgabe warm.

Probier es selbst

let temp = Int(readLine()!)!

// TODO: switch auf temp mit Bereichen, drucke das passende Label
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Kontrollfluss

Übe selbstständig: Swift-Playground