← Danh sách bài học
🔁
Vòng lặp
Vòng lặp giúp lặp lại công việc nhiều lần: xử lý mảng, đếm, tổng, tìm kiếm. C++ có 3 loại: for, while, do-while.
1. for
Dùng khi biết trước số lần lặp. Có 3 phần: khởi tạo; điều kiện; bước.
for (int i = 1; i <= 10; i++) cout << i << " ";2. while
Dùng khi số lần lặp không biết trước, kiểm tra điều kiện ĐẦU.
int n = 100;
while (n > 1) { n /= 2; cout << n << " "; }3. do-while
Kiểm tra điều kiện SAU — thân lặp chạy ít nhất 1 lần. Thường dùng cho menu nhập lại.
int chon;
do {
cout << "1.Choi 2.Thoat: "; cin >> chon;
} while (chon != 2);4. break và continue
break: thoát vòng lặp gần nhất. continue: bỏ qua phần còn lại của lượt hiện tại, sang lượt tiếp theo.
5. Range-based for (C++11)
Duyệt collection ngắn gọn:
vector<int> v = {1,2,3};
for (int x : v) cout << x << " ";
for (auto& x : v) x *= 2; // & để sửa được💻 Code mẫu thực chiến
Bảng cửu chương
In bảng cửu chương của số n.
int n; cin >> n;
for (int i = 1; i <= 10; i++)
cout << n << " x " << i << " = " << n*i << endl;Đếm số ngày làm việc
Trong N ngày, đếm số ngày không phải Chủ nhật (cứ 7 ngày có 1 CN).
int N; cin >> N;
int lam = 0;
for (int i = 1; i <= N; i++)
if (i % 7 != 0) lam++;
cout << lam;Tính lãi kép ngân hàng
Gửi P đồng lãi r%/năm, hỏi sau n năm còn bao nhiêu.
double P, r; int n;
cin >> P >> r >> n;
for (int i = 0; i < n; i++) P *= (1 + r/100);
cout << (long long)P;💡 Mẹo & lưu ý
- Tránh sửa biến đếm bên trong for — dễ gây lặp vô hạn.
- Dùng size_t hoặc int có dấu khi so sánh với v.size() để tránh cảnh báo.
- Vòng lặp lồng nhau: độ phức tạp nhân lên (O(n²), O(n³)…). Cẩn thận với n lớn.