Cộng đồng chia sẻ tri thức Lib24.vn

Vòng lặp while trong Java

Gửi bởi: Phạm Thọ Thái Dương 23 tháng 10 2019 lúc 10:39:51


Mục lục
* * * * *

1. Cú pháp, cách hoạt động và công dụng vòng lặp while. 

Công dụng.

Vòng lặp while là cấu trúc điều khiển lặp được dùng để thực hiện một lệnh hay một khối lệnh với số lần lặp chưa xác định trước. Với cấu trúc này điều kiện lặp được kiểm tra trước khi thực hiện thân của vòng lặp.

Cú pháp.

while (điều_kiện_lặp) {
	// Các lệnh
}
// Lệnh kế tiếp

trong đó:

  1. điều_kiện_lặp là biểu thức để xác định điều kiện lặp. Biểu thức này phải trả về giá trị là true hoặc false.
  2. Các lệnh nằm trong cặp dấu {} là thân của vòng lặp.

Cách hoạt động.

Lưu đồ hoạt động của vòng lặp while như sau:

Đầu tiên, vòng lặp whilesẽ tính giá trị của biểu thức điều_kiện_lặp. Khi biểu thức này có giá trị đúng (true) thì những lệnh nằm trong thân của vòng lặp sẽ được thực hiện; sau khi thực hiện xong các lệnh này thì biểu thức điều_kiện_lặp được kiểm tra lại để quyết định có lặp tiếp hay không.

Như vậy, những lệnh nằm trong thân vòng lặp sẽ lần lượt được làm đi làm lại nhiều lần trong khi biểu thức điều_kiện_lặp còn có giá trị đúng. Nếu đến một lúc nào đó biểu thức điều_kiện_lặp có giá trị sai (false) thì các lệnh trong thân vòng lặp sẽ không được thực hiện và vòng lặp while sẽ kết thúc.

Lưu ý:

  1. Vòng lặp while kiểm tra điều kiện trước rồi mới thực hiện các câu lệnh trong thân vòng lặp nên nếu ngay từ đầu biểu thức điều_kiện_lặp đã có giá trị sai thì vòng lặp while sẽ không được thực hiện bất cứ lần nào.
  2. Trong thân của vòng lặp while phải có lệnh làm thay đổi giá trị của biểu thức điều_kiện_lặp để đảm bảo sau một số lần thực hiện thì biểu thức điều kiện sẽ có giá trị sai và kết thúc vòng lặp. Nếu trong trường hợp thân của vòng lặp không có lệnh làm thay đổi giá trị của biểu thức thì phải sử dụng từ khóa break để thoát khỏi vòng lặp.

2. Ví dụ.

Sau đây tôi sẽ đưa ra một ví dụ đơn giản có sử dụng vòng lặp while: Viết chương trình nhập vào các số nguyên và tính tổng các số đó, nếu tổng lớn hơn > 100 thì kết thúc vòng lặp và hiển thị thông báo tổng của các số đã nhập.

package vong_lap_while;
 
import java.util.Scanner;
 
public class TinhTongCacSoNguyen {
 
    public static void main(String[] args) {
        int number, sum = 0;
        Scanner scanner = new Scanner(System.in);
         
        // bắt đầu vòng lặp
        // kiểm tra nếu biến sum còn nhỏ hơn 100 thì còn thực hiện.
        while (sum < 100) {
            System.out.println("Nhập vào số nguyên bất kỳ: ");
            number = scanner.nextInt();
            sum += number;  // sum = sum + number;
        }
         
        System.out.println("Tổng các số nguyên vừa nhập = " + sum);
    }
 
}
Kết quả sau khi biên dịch chương trình như sau:

Quá trình hoạt động của chương trình này như sau:

Bước 1: Khởi tạo biến tổng sum = 0.

Bước 2: Kiểm tra sum < 100 đúng nên nhập vào số 1 và thực hiện lệnh sum = sum + number = 0 + 1 = 1.

Bước 3: Kiểm tra sum < 100 đúng nên nhập vào số 6 và thực hiện lệnh sum = sum + number = 1 + 6 = 7.

Bước 4: Kiểm tra sum < 100 đúng nên nhập vào số 9 và thực hiện lệnh sum = sum + number = 7 + 9 = 16.

Bước 5: Kiểm tra sum < 100 đúng nên nhập vào số 15 và thực hiện lệnh sum = sum + number = 16 + 15 = 31.

Bước 6: Kiểm tra sum < 100đúng nên nhập vào số 18 và thực hiện lệnh sum = sum + number = 31 + 18 = 49.

Bước 7: Kiểm tra sum < 100 đúng nên nhập vào số 1 và thực hiện lệnh sum = sum + number = 49 + 1 = 50.

Bước 8: Kiểm tra sum < 100 đúng nên nhập vào số 20 và thực hiện lệnh sum = sum + number = 50 + 20 = 70.

Bước 9: Kiểm trasum < 100 đúng nên nhập vào số 55 và thực hiện lệnh sum = sum + number = 70 + 55 = 125.

Bước 10: Kiểm tra sum < 100 sai nên kết thúc vòng lặp whilevà hiển thị tổng sum = 125 ra màn hình.

3. Lời kết.

Trong bài này tôi đã giới thiệu đến các bạn cấu trúc lặp đầu tiên đó là cấu trúc vòng lặp while bao gồm cú pháp, công dụng và ví dụ minh họa. Để các bạn có thể nắm rõ hơn về vòng lặp này, tôi có đưa ra một số các bài tập cho các bạn luyện tập. Sang bài sau, chúng ta sẽ tìm hiểu về cấu trúc vòng lặp do - while.

Nguồn: freetuts

Các bài học liên quan