Vòng lặp while
Thuộc phần Kiến thức nền tảng trong hành trình Swift của Coddy. Bài học 43 trên 86.
Đôi khi, bạn không biết chính xác vòng lặp cần chạy bao nhiêu lần. Thay vào đó, bạn muốn vòng lặp tiếp tục chạy while khi điều kiện vẫn còn đúng. Đó là lúc vòng lặp while phát huy tác dụng.
var count = 1
while count <= 3 {
print(count)
count += 1
}
// Đầu ra: 1, 2, 3 (mỗi số trên một dòng mới)Vòng lặp kiểm tra điều kiện count <= 3 trước mỗi lần lặp. Khi điều kiện còn đúng, code bên trong sẽ chạy. Khi điều kiện trở thành sai, vòng lặp dừng lại.
Hãy cẩn thận: nếu điều kiện (condition) không bao giờ trở thành sai, bạn sẽ tạo ra một vòng lặp (loop) vô hạn! Luôn đảm bảo có thứ gì đó bên trong vòng lặp thay đổi điều kiện theo thời gian:
var number = 10
while number > 0 {
print(number)
number -= 2
}
// Đầu ra: 10, 8, 6, 4, 2Dùng vòng lặp while khi số lần lặp phụ thuộc vào một điều kiện thay đổi trong quá trình thực thi, thay vì một phạm vi cố định.
Thử thách
DễViết một hàm countdownSum nhận start và trả về tổng tất cả các số từ start giảm dần đến 1.
Dùng vòng lặp while để đếm ngược từ số bắt đầu, cộng từng giá trị vào tổng đang tính cho đến khi bạn đạt đến không.
Logic:
- Bắt đầu với số đã cho
- Trong khi số đó lớn hơn 0, cộng số đó vào tổng rồi giảm đi 1
- Trả về tổng cuối cùng
Tham số:
start(Int): Số bắt đầu đếm ngược
Giá trị trả về: Tổng tất cả các số từ start giảm dần đến 1 (Int)
Ví dụ, nếu start là 5, hàm tính 5 + 4 + 3 + 2 + 1 = 15 rồi trả về 15.
Tự làm thử
func countdownSum(start: Int) -> Int {
// Viết code ở đây
}
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 Kiến thức nền tảng
4Các toán tử, phần 1
Toán tử số họcToán tử moduloPhép gán kết hợpÔn tập: phép tính đơn giảnToán tử so sánh7Nhập xuất cơ bản
Hàm in raNội suy chuỗiĐầu vào từ dòngChuyển đổi kiểu dữ liệuÔn tập đến 120Ôn tập đúng hay sai3Giá trị tùy chọn
Giá trị tùy chọn là gìMở gói bằng if letGuard letToán tử gộp nilÔn tập: mở gói an toàn6Ra quyết định
Câu lệnh ifIf và elseÔn tập: máy tính đơn giảnCâu lệnh switchSwitch với khoảng giá trị9Vòng lặp
Vòng lặp for-inVòng lặp whileVòng lặp repeat-whileBreakContinueÔn tập: giai thừaDải giá trị trong vòng lặpVòng lặp lồng nhauÔn tập: đầu vào động12Kiến thức cơ bản về mảng
Khai báo mảngTruy cập phần tửChỉnh sửa mảngPhương thức của mảngÔn tập: Danh sách sản phẩmÔn tập: Mảng đảo ngượcTuple15Trình theo dõi chi tiêu hằng ngày
Tổng quan về dự ánThoát chương trìnhTự luyện tập: Playground Swift