6 bước xây dựng một chương trình máy tính
Xây dựng chương trình là một nghệ thuật, đòi hỏi sự đầu tư nghiêm túc của...
Kết quả sẽ mở trong tab mới, giới hạn trong website này.
Truy cập nhanh
Tìm kiếm gần đây
Giải sử, cần viết chương trình xuất các số từ 1 đến 10. Đơn giản là sử dụng 10 câu lệnh cout<<. Nhưng cần viết chương trình xuất các số từ 1 đến 1000. Sử dụng 1000 câu lệnh cout<< thì sẽ là một pha xử lý thật “cồng kềnh”. Giải pháp là sử dụng […]
Giải sử, cần viết chương trình xuất các số từ 1 đến 10. Đơn giản là sử dụng 10 câu lệnh cout<<. Nhưng cần viết chương trình xuất các số từ 1 đến 1000. Sử dụng 1000 câu lệnh cout<< thì sẽ là một pha xử lý thật “cồng kềnh”.
Giải pháp là sử dụng cấu trúc lặp để thực hiện các công việc mang tính lặp lại khi thỏa mãn điều kiện nào đó. Có 3 lệnh lặp trong C++ là for, while, do…while. Bài này sẽ giới thiệu cách sử dụng vòng lặp for.
Cho phép thực hiện công việc lặp đi lặp lại nhiều lần với số lần lặp có thể xác định trước.
for (<khởi đầu>; <điều kiện lặp>; <bước nhảy>) {
//code block
}
Nguyên lý hoạt động của vòng lặp for như sau:
<khởi đầu> khởi tạo giá trị của biến và chỉ thực thi một lần duy nhất. Sau đó, nếu <điều kiện lặp> đúng (true) thì thực thi các dòng lệnh trong vòng lặp for. Nếu <điều kiện lặp> sai (false) thì kết thúc vòng lặp.
<bước nhảy> sẽ thay đổi giá trị của biến lúc <khởi đầu>. Giá trị của biến này sẽ được kiểm tra lại (kiểm tra <điều kiện lặp>) sau mỗi lần lặp.
#include <iostream>
using namespace std;
int main()
{
for (int i = 1; i <= 5; ++i) {
cout << i << " ";
}
return 0;
}
1 2 3 4 5| Lần lặp | Biến i | Điều kiện lặp i<=5 | Thực thi |
| 1 | i=1 | true | In ra 1 và tăng i lên 2 |
| 2 | i=2 | true | In ra 2 và tăng i lên 3 |
| 3 | i=3 | true | In ra 3 và tăng i lên 4 |
| 4 | i=4 | true | In ra 4 và tăng i lên 5 |
| 5 | i=5 | true | In ra 5 và tăng i lên 6 |
| 6 | i=6 | false | Vòng lặp chấm dứt |
if (n < 10 && m < 20)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
cout<<i + j<<endl;
}
}
}
int i;
for (i = 0; i < 10; i++){//có khởi tạo biến i=0
cout<<i<<endl;
}
int i = 0;
for (; i < 10; i++){//không cần khởi tạo biến i
cout<<i<<endl;
}
int i;
for (i = 0; i < 10; i++){//có bước nhảy
cout<<i<<endl;
}
for (i = 0; i < 10; )//không có bước nhảy
{
cout<<i<<endl;
i++;
}
int i;
for (i = 0; i < 10; i++){//có điều kiện lặp
cout<<i<<endl;
}
for (i = 0; ; i++){//không có điều kiện lặp, bị lặp vô hạn
cout<<i<<endl;
}
for (i = 0; ; i++){//không có điều kiện lặp
if (i >= 10)
break;//thoát vòng lặp for
cout<<i<<endl;
}
for (i = 0; i < 10; i++);//không được có ; ở đây
{
cout<<i<<endl;
}
for (i = 0; i < 10; i++)
{
};//không được có ; ở đây
{
cout<<i<<endl;
}
for (int i = 1, j = 2; i + j < 10; i++, j += 2){
cout<<i + j<<endl;
}
Lưu ý: <điều kiện lặp> trong for nên giới hạn rõ ràng để tránh trường hợp lặp vô hạn.