Đối với vòng lặp trong C++ với Cú pháp & Chương trình VÍ DỤ
Vòng lặp For là gì?
Đây là cấu trúc kiểm soát sự lặp lại giúp chúng ta lặp lại một phần của C++ mã cho một số lần cố định. Chạy vòng lặp for với điều kiện biểu thức kiểm tra là đúng. Vòng lặp kết thúc thực thi ngay lập tức biểu thức kiểm tra trở thành sai. Điều này có nghĩa là trước khi thực hiện phần thân vòng lặp trong mỗi lần lặp, điều kiện phải được đánh giá. Nếu đánh giá trả về giá trị đúng thì phần thân vòng lặp sẽ được thực thi. Nếu đánh giá trả về sai, việc thực thi phần thân vòng lặp sẽ bị chấm dứt.
Vòng lặp for hoạt động như thế nào?
Vòng lặp for hoạt động như sau:
Giải thích biểu đồ dòng chảy:
- Sản phẩm C++ trình biên dịch ngôn ngữ bắt đầu bằng cách đánh giá việc khởi tạo. Việc này chỉ được thực hiện một lần khi quá trình thực thi bắt đầu.
- Biểu thức kiểm tra được đánh giá/thực thi.
- Nếu biểu thức kiểm tra là đúng, phần thân vòng lặp sẽ được thực thi và biểu thức kiểm tra sẽ được cập nhật. Nếu biểu thức trở thành sai, vòng lặp for sẽ kết thúc.
- Sau khi thực hiện biểu thức kiểm tra, việc tăng giá trị được thực hiện để tăng giá trị của biến điều khiển vòng lặp.
- Biểu thức kiểm tra được đánh giá lại và quá trình tiếp tục cho đến khi biểu thức trở thành sai.
- Nếu biểu thức sai thì các câu lệnh trong thân vòng lặp sẽ bị bỏ qua.
Chú thích: Biểu thức kiểm tra được cập nhật sau mỗi lần lặp. Điều này có nghĩa là các giá trị khác nhau của biến điều khiển vòng lặp được thực thi trong mỗi lần lặp.
Khi nào nên sử dụng vòng lặp for?
Vòng lặp for nên được sử dụng khi:
- Bạn có một số lần lặp cố định.
- Bạn biết chính xác số lần lặp.
Cú pháp của vòng lặp for
Đây là cú pháp của vòng lặp for:
for ( initialization;condition;increment ) { statement(s); }
Dưới đây là giải thích về các thông số trên:
- Khởi tạo: Phần này được thực hiện đầu tiên và chỉ một lần. Tại đây, bạn khai báo và khởi tạo các biến điều khiển vòng lặp. Các biến điều khiển vòng lặp có thể có nhiều hơn một và giá trị của chúng sẽ thay đổi sau mỗi lần lặp. Tuy nhiên, giá trị của chúng phải được đánh giá trước khi chạy vòng lặp.
- Điều kiện: Phần này được thực hiện tiếp theo. Để thân vòng lặp được thực thi, điều kiện này phải đúng. Nếu điều kiện sai, việc thực thi sẽ chuyển sang câu lệnh ngay sau thân vòng lặp. Nếu điều kiện sai trong lần đánh giá đầu tiên, phần thân vòng lặp sẽ không bao giờ được thực thi.
- Tăng: Khi phần thân vòng lặp đã được thực thi, điều khiển sẽ nhảy tới mức tăng. Bạn có thể bỏ phần này và thay vào đó sử dụng dấu chấm phẩy.
- Một lần nữa, điều kiện được đánh giá. Nếu đúng, phần thân vòng lặp sẽ được thực thi và quá trình này tiếp tục. Vòng lặp kết thúc ngay khi điều kiện trở thành sai.
Đối với vòng lặp trong C++ Ví dụ 1
#include <iostream> using namespace std; int main() { for (int x=0; x<5; x=x+1) { cout << "X is: " << x << endl; } return 0; }
Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi. Nó sẽ cho phép chúng ta đọc và ghi vào bảng điều khiển.
- Bao gồm không gian tên std để sử dụng các lớp của nó và chức năng mà không gọi nó.
- Gọi hàm main() để thêm logic của chương trình vào bên trong. Dấu { bắt đầu phần thân của hàm main().
- Tạo vòng lặp for. Việc khởi tạo tạo ra một biến số nguyên x và gán cho nó giá trị 0. Điều kiện nêu rõ rằng giá trị của x phải nhỏ hơn 5. Gia số sẽ tăng giá trị của x lên 1 sau mỗi lần lặp. { đánh dấu sự bắt đầu của phần thân vòng lặp for.
- Để in giá trị của biến x cùng với văn bản khác trên bảng điều khiển. Cuối cùng là một C++ từ khóa có nghĩa là dòng cuối cùng. Con trỏ sẽ in dòng tiếp theo trong lần lặp tiếp theo.
- Kết thúc thân vòng lặp.
- Hàm main() sẽ trả về một giá trị nếu chương trình chạy tốt.
- Phần cuối của hàm main().
Đối với vòng lặp trong C++ Ví dụ 2
#include <iostream> using namespace std; int main() { int x, num, factorial = 1; cout << "Type positive number: "; cin >> num; for (x = 1; x <= num; ++x) { factorial *= x; // factorial = factorial * x; } cout << "Factorial of " << num << " = " << factorial; return 0; }
Đầu ra:
Đây là ảnh chụp màn hình của mã:
Giải thích mã:
- Bao gồm tệp tiêu đề iostream trong mã của chúng tôi. Nó sẽ cho phép chúng ta đọc và ghi vào bảng điều khiển.
- Bao gồm không gian tên std để sử dụng các lớp và hàm của nó mà không cần gọi nó.
- Gọi hàm main() để thêm logic của chương trình vào bên trong.
- Dấu { bắt đầu phần thân của hàm main().
- Khai báo các biến số nguyên, x, num và giai thừa. Biến giai thừa đã được gán giá trị là 1.
- In một số văn bản trên bảng điều khiển.
- Nhắc người dùng nhập giá trị cho biến num.
- Tạo vòng lặp for. Việc khởi tạo tạo ra một biến số nguyên x và gán cho nó giá trị 1. Điều kiện nêu rõ rằng giá trị của x phải nhỏ hơn hoặc bằng giá trị của biến num. Việc tăng giá trị của x lên 1 sau mỗi lần lặp. { đánh dấu sự bắt đầu của phần thân vòng lặp for.
- Tính giá trị giai thừa bằng công thức giai thừa = giai thừa * x.
- Kết thúc thân vòng lặp.
- Để in giá trị của biến num và giai thừa cùng với văn bản khác trên bảng điều khiển.
- Hàm main() sẽ trả về một giá trị nếu chương trình chạy tốt.
- Phần cuối của hàm main().
Tổng kết
- Vòng lặp for lặp lại một phần của C++ mã cho một số lần cố định.
- Vòng lặp for chạy miễn là điều kiện kiểm tra là đúng.
- Phần khởi tạo của vòng lặp for là để khai báo và khởi tạo bất kỳ biến điều khiển vòng lặp nào.
- Phần điều kiện của vòng lặp for phải đúng thì thân vòng lặp mới được thực thi.
- Phần tăng dần của vòng lặp for có thể được thay thế bằng dấu chấm phẩy.