C++: Bài 15. Vòng lặp while
Tương tự như vòng lặp for, vòng lặp while cũng được 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 while còn 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:
Quy cách thực thi:
Vòng lặp while sẽ kiểm tra Điều_kiện trước:
+ Nếu sai thì thoát khỏi vòng lặp mà không thực hiện khối_lệnh.
+ Nếu đúng thì 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 thực hiện cứ như vậy cho đến khi điều_kiện sai.
Ví dụ 1:
Phần điều kiện của vòng lặp là số 1 (hoặc một số bất kỳ khác 0) có nghĩa rằng điều kiện là luôn luôn đúng, tức khối lệnh của nó sẽ được thực hiện vô hạn lần.
#include<iostream> using namespace std; main(){ while(true){ //điều kiện như thế này là luôn luôn đúng, tức là vòng lặp sẽ thực hiện khối lệnh vô hạn lần cout << "Lap trinh vien"; //câu lệnh này sẽ được thực hiện vô hạn lần } return 0; }
Ví dụ 2:
Ví dụ sau sử dụng một biến đếm n để thực hiện khối lệnh với một số lần mong muốn, điều này có nghĩa ta cũng có thể biến while trở thành vòng lặp xác định.
#include<iostream> using namespace std; main(){ int n=0; while(n<10){ //câu lệnh này sẽ được thực hiện 10 lần cout<<"Lap trinh vien - Programmer - Developer"<<endl; n++; } return 0; }
Ví dụ 3:
Còn đây là ví dụ áp dụng while để kiểm soát giá trị nhập vào phải thỏa mãn điều kiện đặt ra (validate). Trong trường hợp này bạn sẽ phải nhập một số nguyên n nằm trong khoảng (0<n<100), nếu không hệ thống sẽ bắt bạn nhập lại và sẽ lặp đến khi nào bạn nhập đúng theo yêu cầu thì thôi.
#include<iostream> using namespace std; main(){ int n; cout<<"Moi ban nhap mot so n (0<n<1000): "; cin>>n; while(n<=0 || n>=1000){ //nếu n không nằm trong khoảng 0<n<1000 thì sẽ thực hiện khối lệnh phía dưới cout<<"Moi ban nhap lai n: "; cin>>n; } cout<<"Sau khi nhap, n = "<<n; return 0; }