Vòng lặp for
Thuộc phần Kiến thức nền tảng trong hành trình R của Coddy. Bài học 38 trên 78.
Đôi khi bạn cần lặp lại một hành động nhiều lần. Thay vì viết đi viết lại cùng một đoạn code, bạn có thể dùng vòng lặp for để chạy code nhiều lần.
Vòng lặp for duyệt qua một dãy giá trị, chạy đoạn code bên trong vòng lặp một lần cho mỗi giá trị:
for (i in 1:3) {
print(i)
}Đầu ra:
[1] 1
[1] 2
[1] 3Biến i lần lượt nhận từng giá trị trong dãy 1:3 (nghĩa là 1, 2, 3). Với mỗi giá trị, đoạn code bên trong dấu ngoặc nhọn { } chạy một lần.
Bạn có thể dùng bất kỳ tên biến nào và thực hiện bất kỳ phép toán nào bên trong vòng lặp:
for (num in 1:4) {
print(num * 2)
}Đầu ra:
[1] 2
[1] 4
[1] 6
[1] 8Vòng lặp nhân mỗi số với 2 trước khi in ra. Đây là sức mạnh của vòng lặp: viết logic một lần, rồi áp dụng cho mọi giá trị trong dãy.
Thử thách
DễĐọc một số n từ đầu vào và dùng vòng lặp for để in ra bình phương của tất cả các số từ 1 đến n.
In ra mỗi bình phương trên một dòng bằng print().
Ví dụ, nếu đầu vào là 4, đầu ra sẽ là:
[1] 1
[1] 4
[1] 9
[1] 16Tự làm thử
# Đọc đầu vào
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))
# TODO: Viết code bên dưới
# Dùng vòng lặp for để in ra bình phương của mỗi số từ 1 đến nBà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
4Toán tử phần 2
Toán tử logic (AND, OR)Toán tử logic phần 2 (NOT)Ôn tập: logic đơn giảnLogic vector hóa phần 1Logic vector hóa phần 22Biến và kiểu dữ liệu
Kiểu dữ liệu sốKiểu dữ liệu số nguyênKiểu dữ liệu ký tựKiểu dữ liệu logicKiểm tra kiểu dữ liệuQuy tắc đặt tênGiá trị thiếu: NATóm tắt: tạo biến8Vòng lặp
Vòng lặp forVòng lặp whileBreakNext (continue)Ôn tập: giai thừaTạo dãy (seq, :)Vòng lặp lồng nhauÔn tập: đầu vào động3Toán tử phần 1
Toán tử số họcPhép chia lấy phần nguyên và phép moduloToán tử gánÔn tập: phép tính đơn giảnToán tử so sánh6Nhập xuất cơ bản
In đầu raDùng cat để in đầu raĐầu ra với biếnĐọc đầu vào bằng readline()Cơ bản về chuyển đổi kiểuÔn tập: máy tính tuổiÔn tập: đúng hay sai9Hàm
Khai báo hàmĐối số hàmGiá trị trả vềÔn tập: hàm SigmaÔn tập: hàm xác thựcGiá trị tham số mặc địnhTự luyện tập: Trình biên dịch R online