Ôn tập: giai thừa
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 47 trên 86.
Đã đến lúc thử thách kỹ năng dùng vòng lặp của bạn! Giai thừa là một bài toán lập trình kinh điển, rất phù hợp để luyện tập dùng vòng lặp.
Giai thừa của một số n (viết là n!) là tích của tất cả các số nguyên dương từ 1 đến n. Ví dụ:
5!= 5 × 4 × 3 × 2 × 1 = 1203!= 3 × 2 × 1 = 61!= 1
Để tính giai thừa bằng vòng lặp, bạn bắt đầu với kết quả bằng 1 rồi nhân kết quả với từng số trong phạm vi:
var result = 1
let n = 5
for i in 1...n {
result *= i
}
print(result) // Đầu ra: 120Vòng lặp nhân result với 1, rồi 2, rồi 3, cứ thế cho đến khi đạt đến n. Mỗi lần lặp đều dựa trên kết quả của lần trước.
Thử thách
DễViết một hàm (function) factorial nhận n và trả về giai thừa của số đó.
Dùng vòng lặp (loop) để nhân tất cả các số nguyên dương từ 1 đến n với nhau.
Tham số:
n(Int): Một số nguyên dương (1 trở lên)
Giá trị trả về: Giai thừa của n (Int)
Ví dụ, nếu n là 4, hàm tính 1 × 2 × 3 × 4 = 24 và trả về 24.
Tự làm thử
func factorial(n: 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