Bài tập vòng lặp while trong python

This entry is part 17 of 29 in the series Python Không Khó

79 / 100

Vòng lặp while trong Python có tác dụng gì? Cú pháp và cách sử dụng vòng lặp while ra sao? Đó là những nội dung mà Lập trình không khó sẽ hướng dẫn cho các bạn trong bài học Python này.

Vòng lặp while trong python được dùng để lặp lại một khối lệnh, đoạn code khi điều kiện kiểm tra là đúng. While dùng trong những trường hợp mà chúng ta không thể dự đoán trước được số lần cần lặp là bao nhiêu.

whileđiu_kin:

    khi_lnh

Vòng lặp while sẽ  kiểm tra điều kiện đầu tiên, nếu điều kiện là True thì lúc đó mới thực hiện các khối lệnh ở bên trong, còn nếu trả về False. Sau khi thực hiện khối lệnh, while tiếp tục kiểm tra điều kiện và thực thi lại chu kì của vòng lặp thì sẽ thoát ra khỏi vòng lặp.

Bài tập vòng lặp while trong python

Ví dụ sử dụng vòng lặp while để tính tổng các số nguyên dương nhỏ hơn 8:

n=0

sum=0

whilen<8:

    sum=sum+n

    n= n+1

print("tổng các số nhỏ hơn 8 là : ",sum)

Với vòng lặp trên, biến lưu trữ tổng là sum, biến đếm là n, sau mỗi lần tính thì tăng n lên một đơn vị. Cứ như vậy cho đến khi n=0, lúc này điều kiện sẽ là False và vòng lặp sẽ dừng lại.

tổng các số nhỏ hơn 8 là : 28

Biến n phải được tăng, nếu không sẽ trở thành vòng lặp vô hạn. Có nhiều bạn rất hay quên điều này.

Kết hợp while với else.

Bạn có thể kết hợp while với else trong trường hợp điều kiện là False để thực hiện các khối lệnh khác.

ví dụ:

n=1

whilen<4:

    print("n bé hơn 8")

    n+=1

else:

    print("n bằng 4, thoát vòng lặp")

Trong ví dụ trên, nếu n nhỏ hơn 4 thì sẽ in ra “n nhỏ hơn 4”, còn nếu không thì sẽ in “n bằng 4, thoát vòng lặp”.

n bé hơn 4

n bé hơn 4

n bé hơn 4

4 bằng 4, thoát vòng lặp

Trong python có hai giá trị được xem là False0None, nếu điều kiện trong while là một trong hai giá trị trên thì vòng lặp sẽ không được thực hiện.

while0:

    print("điều kiện đúng")

else:

    print("điều kiện sai")

#return điều kiện sai

nếu bạn thay None bằng các giá trị 0 hay False thì sẽ có cùng kết quả tương tự.

While trên một dòng

Nếu khối lệnh của bạn chỉ có một dòng code, bạn có  thể viết vòng while của bạn chỉ trên một dòng:

whileTrue:print("hello")

Phía trên là một vòng lặp vô hạn, với điều kiện luôn luôn là True nên vòng lặp sẽ chạy mãi cho tới khi bạn kết thúc chương trình.

Hãy tham gia group lập trình không khó để cùng thảo luận về các vấn đề về lập trình.

Hẹn các bạn vào các bài học sau!!!