C++: Bài 16. Vòng lặp do-while

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Tương tự như vòng lặp while, vòng lặp do-while dùng để thực hiện lặp đi lặp lại nhiều lần một khối lệnh.

Vòng lặp do-while cũng được gọi là vòng lặp không xác định (vô hạn) vì thông thường ta sẽ không xác định được số lần thực hiện khối lệnh trong nó.

Cú pháp:

do{

    khối_lệnh;

}while(điều_kiện);

Quy cách thực thi

Vòng lặp do-while sẽ thực hiện khối_lệnh trước rồi mới kiểm tra điều_kiện. Cụ thể:

+ Khi trình dịch gặp vòng lặp do-while thì trước tiên nó sẽ thực hiện khối_lệnh bên trong cặp {}.

+ Sau đó trình dịch xuống phần điều_kiện để kiểm tra xem điều kiện đúng (true) hay sai (false).

+ Nếu điều_kiện đúng thì tiếp tục quay lên thực hiện khối_lệnh, thực hiện xong lại quay lên kiểm tra điều_kiện, chu trình này sẽ lặp đi lặp lại cho đến khi điều_kiện sai.

Như vậy, khối_lệnh trong vòng lặp do-while sẽ được thực hiện ít nhất một lần cho dù điều_kiện sai ngày từ đầu.

Ví dụ:

Vòng lặp do-while thực hiện khối_lệnh một lần duy nhất (chưa kịp lặp lần nào):

#include <iostream>
using namespace std;

main() {
  do{
    cout<<"Lap trinh vien"; //câu lnh này s được thc hin mt ln
  }while(0); //vì 0 tương ng vi sai (false)

  return 0;
}

Vòng lặp do-while thực hiện khối_lệnh 10 lần:

#include <iostream>
using namespace std;

main() {
  int n=0;

  do{
    cout<<"Lap trinh vien"<<endl; //câu lnh này,
    n++;                          //và câu lnh này s được thc hin 10 ln
  }while(n<10);

  return 0;
}

Nhập vào một số n với yêu cầu n phải nằm trong khoảng 0<n<1000.

#include <iostream>
using namespace std;

main() {
  int n;

  do{ //thc hin khi lnh trước
  cout<<"Moi ban nhap mot so n (0<n<1000): ";
  cin>>n;
  }while(!(0<n && n<1000)); //trong khi n không nm trong khong 0-1000 thì thc hin tiếp khi lnh

  cout<<"Sau khi nhap, n = "<<n;

  return 0;
}

Xem thêm

» Tiếp: Bài 17. Hàm (Function)
« Trước: Bài 15. Vòng lặp while
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!