btvn.vn

Vòng lặp for và tích lũy

Lưu trên thiết bị này
Lập trình Python nền tảng · Chọn bài khác

Lặp lại cùng một cách làm

Muốn cộng các số hoặc đếm phần tử thỏa điều kiện, ta lặp qua từng giá trị. Bước quan trọng là khởi tạo biến và cập nhật đúng bên trong vòng lặp.

Đọc range trước khi tính

range(n) cho các số 0 đến n−1 khi n dương; range(a, b) đi từ a đến trước b; range(a, b, step) thêm bước khác 0. Cận b không được lấy. for cũng có thể duyệt trực tiếp phần tử danh sách hoặc xâu. Biến tổng thường bắt đầu 0 và cộng giá trị cần lấy. Biến đếm cũng bắt đầu 0 nhưng mỗi lần thỏa điều kiện chỉ tăng 1. Vị trí print trong hoặc ngoài vòng lặp quyết định in mỗi lượt hay chỉ in kết quả cuối.

Lập bảng tích lũy

```python s = 0 for k in range(2, 7, 2): s = s + k print(s) ``` | k | s sau khi cộng | |---|---| | 2 | 2 | | 4 | 6 | | 6 | 12 | range lấy 2, 4, 6 rồi dừng trước 7. print ngoài vòng lặp nên chỉ in 12.

Thử vận dụng

range(1, 5) chứa những giá trị nào?
Chọn một đáp án

Đếm số chẵn

```python count = 0 for x in [3, 8, 2, 5]: if x % 2 == 0: count += 1 print(count) ``` Hai giá trị 8 và 2 làm count tăng nên kết quả 2. Nếu cộng x thay vì 1, ta tính tổng số chẵn 10, không còn đếm.

Ví dụ xem cách làm

Liệt kê range(5, 0, -2).

Ví dụ xem cách làm

Nếu đặt s = 0 vào đầu mỗi lượt của vòng lặp cộng ở ví dụ 1, kết quả cuối sẽ là gì?

Những điều cần nhớ

Liệt kê các giá trị vòng lặp trước khi tính. Phân biệt cộng giá trị với tăng biến đếm và giữ biến tích lũy qua các lượt.

Đang học