Menu
CoddyTech

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 grupowania liczb, na przykład zamiany wyniku na 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 obustronnie domknięty, który obejmuje oba końce, więc 90...100 pasuje do 90, 91 i tak dalej aż do 100. Operator ..< tworzy zakres lewostronnie domknięty, który nie obejmuje górnej granicy: 80..<90 pasuje do wartości 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 wydrukowane „B”. To podejście jest znacznie czytelniejsze niż zapisywanie 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łu wiekowego.

Użyj instrukcji switch z zakresami, 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