Menu
Coddy logo textTech

Switch z zakresami

Część sekcji Podstawy ścieżki Swift w Coddy. Lekcja 30 z 86.

Instrukcje switch stają się jeszcze bardziej przydatne, gdy używasz zakresów zamiast pojedynczych wartości. To idealne rozwiązanie do kategoryzowania liczb w grupy, na przykład do przekształcania wyniku w ocenę.

let score = 85

switch score {
case 90...100:
    print("A")
case 80..<90:
    print("B")
case 70..<80:
    print("C")
case 60..<70:
    print("D")
default:
    print("F")
}

Operator ... tworzy zakres domknięty, który obejmuje oba końce, więc 90...100 pasuje do 90, 91 i kolejnych liczb aż do 100. Operator ..< tworzy zakres lewostronnie domknięty, który nie obejmuje górnej granicy: 80..<90 pasuje do liczb od 80 do 89.

Swift sprawdza każdy przypadek po kolei i wykonuje pierwszy pasujący. Ponieważ nasz wynik to 85, mieści się w zakresie 80..<90, więc zostaje wypisane „B”. To podejście jest znacznie czytelniejsze niż pisanie wielu warunków else if z operatorami porównania.

challenge icon

Wyzwanie

Łatwy
Napisz funkcję getAgeCategory, która przyjmuje age i zwraca kategorię etapu życia na podstawie przedziałów wiekowych.

Użyj instrukcji switch z przedziałami, aby przypisać wiek do jednej z pięciu kategorii etapów życia.

Warunki:

  • 0...2 – zwróć "Infant"
  • 3...12 – zwróć "Child"
  • 13...19 – zwróć "Teenager"
  • 20...64 – zwróć "Adult"
  • 65...120 – zwróć "Senior"
  • Każda inna wartość – zwróć "Invalid age"

Parametry:

  • age (Int): Wiek danej osoby

Zwraca: Kategorię etapu życia jako String

Spróbuj swoich sił

func getAgeCategory(age: Int) -> String {
    // Napisz kod tutaj
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Swift