C++ Loop Types

Xin chào, những người học lập trình! Hôm nay, chúng ta sẽ bắt đầu một hành trình thú vị qua thế giới các vòng lặp trong C++. Là giáo viên khoa học máy tính gần gũi của bạn, tôi ở đây để hướng dẫn bạn qua khái niệm cơ bản này, sẽ trở thành một công cụ thiết yếu trong bộ công cụ lập trình của bạn.

C++ Loop Types

Giới thiệu về vòng lặp

Hãy tưởng tượng bạn được giao nhiệm vụ viết "I love C++" 100 lần. Đúng là rất nhàm chán, phải không? Đây là lúc các vòng lặp đến để cứu nguy! Các vòng lặp cho phép chúng ta thực thi một khối mã nhiều lần, giúp tiết kiệm thời gian và làm cho chương trình của chúng ta hiệu quả hơn.

Trong C++, chúng ta có ba loại vòng lặp chính:

  1. Vòng lặp For
  2. Vòng lặp While
  3. Vòng lặp Do-While

Hãy cùng tìm hiểu từng loại vòng lặp này và xem chúng hoạt động như thế nào!

Vòng lặp For

Vòng lặp For có lẽ là vòng lặp được sử dụng phổ biến nhất trong C++. Nó hoàn hảo khi bạn biết chính xác số lần bạn muốn lặp lại một khối mã.

Cú pháp

for (khởi tạo; điều kiện; cập nhật) {
// Mã cần lặp lại
}

Ví dụ

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
cout << "I love C++ " << i << " times!" << endl;
}
return 0;
}

Trong ví dụ này, chúng ta đang in "I love C++" năm lần. Hãy phân tích:

  1. int i = 1: Chúng ta khởi tạo một biến đếm i bằng 1.
  2. i <= 5: Đây là điều kiện của chúng ta. Vòng lặp sẽ tiếp tục miễn là i nhỏ hơn hoặc bằng 5.
  3. i++: Sau mỗi lần lặp, chúng ta tăng i lên 1.

Kết quả đầu ra sẽ là:

I love C++ 1 times!
I love C++ 2 times!
I love C++ 3 times!
I love C++ 4 times!
I love C++ 5 times!

Vòng lặp While

Vòng lặp While được sử dụng khi chúng ta muốn lặp lại một khối mã miễn là một điều kiện nhất định là đúng, nhưng chúng ta có thể không biết chính xác số lần lặp.

Cú pháp

while (điều kiện) {
// Mã cần lặp lại
}

Ví dụ

#include <iostream>
using namespace std;

int main() {
int count = 1;
while (count <= 5) {
cout << "Iteration of while loop: " << count << endl;
count++;
}
return 0;
}

Trong ví dụ này:

  1. Chúng ta khởi tạo count bằng 1 trước vòng lặp.
  2. Vòng lặp tiếp tục miễn là count nhỏ hơn hoặc bằng 5.
  3. Bên trong vòng lặp, chúng ta in giá trị hiện tại của count và sau đó tăng nó lên.

Kết quả đầu ra sẽ là:

Iteration of while loop: 1
Iteration of while loop: 2
Iteration of while loop: 3
Iteration of while loop: 4
Iteration of while loop: 5

Vòng lặp Do-While

Vòng lặp Do-While tương tự như vòng lặp While, nhưng có một sự khác biệt quan trọng: nó luôn thực thi khối mã ít nhất một lần trước khi kiểm tra điều kiện.

Cú pháp

do {
// Mã cần lặp lại
} while (điều kiện);

Ví dụ

#include <iostream>
using namespace std;

int main() {
int number;
do {
cout << "Enter a number between 1 and 10: ";
cin >> number;
} while (number < 1 || number > 10);

cout << "You entered: " << number << endl;
return 0;
}

Trong ví dụ này:

  1. Chúng ta yêu cầu người dùng nhập một số.
  2. Chúng ta đọc đầu vào bằng cin.
  3. Vòng lặp tiếp tục nếu số nhỏ hơn 1 hoặc lớn hơn 10.
  4. Khi một số hợp lệ được nhập, chúng ta in nó và thoát khỏi vòng lặp.

Vòng lặp này đảm bảo rằng người dùng nhập một số hợp lệ介于 1 và 10.

Câu lệnh điều khiển vòng lặp

Đôi khi, chúng ta cần kiểm soát nhiều hơn đối với các vòng lặp của mình. Đó là khi các câu lệnh điều khiển vòng lặp trở nên hữu ích. Hãy xem hai câu lệnh quan trọng:

Câu lệnh Break

Câu lệnh break cho phép chúng ta thoát khỏi vòng lặp sớm.

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 10; i++) {
if (i == 6) {
cout << "Breaking the loop!" << endl;
break;
}
cout << "Iteration: " << i << endl;
}
return 0;
}

Vòng lặp này sẽ in các lần lặp 1 đến 5, sau đó thoát khi i bằng 6.

Câu lệnh Continue

Câu lệnh continue bỏ qua phần còn lại của lần lặp hiện tại và chuyển sang lần lặp tiếp theo.

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
cout << "Skipping iteration 3" << endl;
continue;
}
cout << "Iteration: " << i << endl;
}
return 0;
}

Vòng lặp này sẽ in tất cả các lần lặp ngoại trừ lần lặp 3, mà nó bỏ qua.

Vòng lặp vô hạn

Một vòng lặp vô hạn là một vòng lặp không bao giờ kết thúc. Mặc dù thường không mong muốn, nhưng có những trường hợp nó có thể hữu ích (như trong phát triển trò chơi).

while (true) {
// Điều này sẽ chạy mãi mãi除非 bị gián đoạn
}

Hãy cẩn thận với các vòng lặp vô hạn! Luôn đảm bảo bạn có cách để thoát khỏi chúng.

So sánh các loại vòng lặp

Dưới đây là một so sánh nhanh các loại vòng lặp chính:

Loại vòng lặp Khi nào nên sử dụng Cú pháp
For Khi bạn biết số lần lặp for (khởi tạo; điều kiện; cập nhật) { }
While Khi bạn không biết số lần lặp while (điều kiện) { }
Do-While Khi bạn muốn thực thi ít nhất một lần do { } while (điều kiện);

Kết luận

Các vòng lặp là khái niệm cơ bản trong lập trình, và việc thành thạo chúng sẽ giúp nâng cao kỹ năng lập trình của bạn. Nhớ rằng, thực hành làm nên完美! Hãy thử viết các vòng lặp của riêng bạn và thử nghiệm với các tình huống khác nhau.

Là giáo viên khoa học máy tính đáng tin cậy của bạn, tôi khuyến khích bạn thử nghiệm với các khái niệm này. Ai biết được? Bạn có thể tạo ra trò chơi video lớn tiếp theo hoặc ứng dụng cách mạng sử dụng các cấu trúc vòng lặp này!

Chúc bạn vui vẻ lập trình, và hy vọng các vòng lặp của bạn luôn kết thúc khi bạn muốn!

Credits: Image by storyset