1/ For
Vòng lặp rất tiện dụng vì chúng giúp tiết kiệm thời gian, giảm lỗi và giúp mã dễ đọc hơn. Vòng lặp có hai loại, một loại biết chính xác số lần lặp và một loại không biết chính xác số lần lặp.
for
là loại vòng lặp biết chính xác số lần lặp.
Cú pháp:
for (statement 1; statement 2; statement 3) {
// khoi ma (duoc thuc thi lap lai nhieu lan)
}
statement 1
: được thực hiệnmột lần duy nhất
trước khi vòng lặp bắt đầustatement 2
: xác định điều kiện để thực thikhối mã
, nếu điều kiện sai thì vòng lặp sẽ kết thúcstatement 3
: được thực thi sau khikhối mã
đã được thực hiện
Ví dụ 1:
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 5; i++) {
cout << i;
cout << "\n";
}
return 0;
}
Trong đó,
int i = 0
: làstatement 1
i < 5
: làstatement 2
- điều kiện để thực thi khối mãdòng 6 và 7
: làkhối mã
cần thực thi lặp lại nhiều lầni++
: làstatement 3
, được thực thi khi dòng 6 và 7 thực hiện xong
Kết quả sẽ là:
1
2
3
4
Nhìn vào statement 1, 2 và 3 thì ta sẽ biết rằng, khối mã (dòng 6 và 7) sẽ được thực thi 4 lần.
- Đầu tiên, statement 1 là gán biến i bằng 0
- Tiếp đến, statement 2 kiểm tra i có nhỏ hơn 5 không; nếu đúng thì khối mã (dòng 6 và 7) được thực thi; nếu sai thì kết thúc vòng lặp
- Cuối cùng, statement 3 được thực thi — tăng i một đơn vị
Ví dụ 1 có thể được viết như sau nếu không sử dụng vòng lặp for:
#include <iostream>
using namespace std;
int main() {
cout << i;
cout << "\n";
cout << i;
cout << "\n";
cout << i;
cout << "\n";
cout << i;
cout << "\n";
return 0;
}
Đây chỉ là 4 lần lặp, các em thử tưởng tượng, sẽ kinh khủng biết chừng nào mà khi cần lặp một khối mã 1000 lần mà không có vòng lặp for.
2/ Kết hợp sử dụng if
Các em có thể kết hợp for
và if
để kiểm soát khối mã thực thi theo ý muốn.
Ví dụ 2:
#include <iostream>
using namespace std;
int main() {
for (int i = 0; i < 5; i++) {
if (i != 2) {
cout << i;
cout << "\n";
}
}
return 0;
}
Kết quả sẽ là:
1
3
4
Gợi ý: các em hãy kết hợp for
với switch
3/ continue
Câu lệnh continue
dùng để ngắt một lần lặp nếu một điều kiện cụ thể xảy ra và tiếp tục với những lần lặp tiếp theo trong vòng lặp.
Ví dụ 3:
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i < 5; i++) {
if (i == 3) {
continue;
}
cout << i << "\n";
}
return 0;
}
Kết quả sẽ là:
1
2
4
Vì khi i == 3
, chúng ta sử dụng continue
để ngắt vòng lặp một lần.