Trang chủ > Javascript cơ bản
Lý thuyết
Mục tiêu
Sinh viên hiểu được khái niệm về lệnh do...while
và cách sử dụng chúng trong bài tập thực tế.
Tổng quan
do {
//statement or block
} while (condition)
Tuy nhiên nó xử lí khối lệnh một lần trước khi biểu thức điều kiện được kiểm tra, nghĩa là khối lệnh đó sẽ được xử lí ít nhất 1 lần.
Chúng ta hãy xem một số ví dụ. Mã lệnh sau xử lí lệnh in 6 lần (nhiều hơn một lần so với lệnh while
thông thường):
var i = 0;
do {
console.log(i + " "); //prints: 0 1 2 3 4 5
} while(i++ < 5);
Trong khi mã lệnh sau vận hành một cách tương tự như một lệnh while
:
var result = 0;
do {
result += 0.1;
console.log(result);
} while (result < 1);
Điều này là vì giá trị được in sau khi nó được cộng dồn, và sau đó biểu thức điều kiện được kiểm tra trước khi đi vào khối lệnh xử lí lần nữa.
Lệnh do...while
rút gọn vận hành một cách khác. Ở đây là một ví dụ:
var result = 0;
do {
console.log(result);
} while ((result += 0.1) < 1);
Giá trị ban đầu của biến result
luôn được in đầu tiên bởi lệnh được xử lí ít nhất một lần trước khi biểu thức điều kiện được kiểm tra lần đầu.
Bài tập
Cho 1 số nguyên dương n. Viết một chương trình đếm và in ra màn hình có bao nhiêu lần số đã cho chia hết cho 2.
Ví dụ:
- Với
n = 7
, đầu ra là"0"
Vì 7 không chia hết cho 2. Tổng số lần 7 chia hết cho 2 là 0.
- Với
- Với
n = 8
, đầu ra là"3"
Vì 8 chia 2 được 4, 4 chia 2 được 2, 2 chia 2 được 1 và 1 không chia hết cho 2. Tổng số lần 8 chia hết cho 2 là 3.
- Với
- Đầu vào: 1 số nguyên
n
nhập từ bàn phím
Điều kiện tiền đề:1 ≤ n ≤ 1000000
- Đầu ra: số lần mà số đã cho
n
có thể chia hết cho 2.
0 Nhận xét