Menu
CoddyTech

Phạm vi trong switch

Thuộc phần Logic và luồng thực thi trong hành trình Swift của Coddy. Bài học 10 trên 56.

Bạn đã dùng switch với các khoảng giá trị trong phần kiến thức cơ bản. Cách này cũng hữu ích cho các bài toán phân loại thực tế, khi mỗi trường hợp bao phủ một khoảng giá trị.

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

case ..<0 đầu tiên dùng dạng khoảng một phía: "mọi giá trị nhỏ hơn 0". Bạn cũng có thể dùng 0... để chỉ "0 hoặc lớn hơn".

Các trường hợp được kiểm tra từ trên xuống dưới và trường hợp khớp đầu tiên sẽ được chọn, vì vậy hãy sắp xếp chúng từ thấp đến cao (hoặc dùng default cho trường hợp khớp với mọi giá trị).

challenge icon

Thử thách

Người mới

Đọc một số nguyên từ đầu vào: nhiệt độ tính bằng độ Celsius. In ra một trong các nhãn sau bằng một câu lệnh switch duy nhất với các trường hợp phạm vi:

  • Dưới 0 (số âm): freezing
  • 0...9: cold
  • 10...19: mild
  • 20...29: warm
  • 30...39: hot
  • Từ 40 trở lên: scorching

Với đầu vào 22, đầu ra là warm.

Tự làm thử

let temp = Int(readLine()!)!

// TODO: dùng switch với các khoảng giá trị của temp, in ra nhãn tương ứng
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng thực thi

Tự luyện tập: Playground Swift