Bài toán 1: Tính tổng dãy S= 1+2+….+100
Lần 1
Lần 2
+1
+2
+100
Việc tăng giá trị cho tổng S được lặp đi lặp lại
?
100
lần.

Lần 100
+…
Xuất phát
S
Bài toán 2: Tính tổng s=1 +2 +3 +..+N cho đến khi S> 100
S
Xuất phát
Lần 1
Lần 2

Lần N
+1
+2
+3
Lần 3
+ N
+…
Việc tăng giá trị cho tổng S được lặp đi lặp lại
? lần.
cho đến khi S > 100
=
=
Bài toán 1: Tính tổng dãy S= 1+2+….+100
Bài toán 2: Tính tổng s=1 +2 +3 +..+N cho đến khi S> 100
Việc tăng giá trị cho tổng S được lặp đi lặp lại
100 lần
Số lần lặp biết trước.
Việc tăng giá trị cho tổng S được lặp đi lặp lại
đến khi S > 100
Số lần lặp chưa biết trước.
Bài 10: Cấu trúc lặp
2
Lặp với số lần lặp biết trước và câu lệnh for - do
Lặp với số lần lặp chưa biết trước
và câu lệnh while - do
Ví dụ
1
Lặp với số lần lặp biết trước và câu lệnh for - do
a) Lặp tiến
b) Lặp lùi
for  :=  to  do  ;
for :=  downto  do ;
Biến đếm tự tăng dần từ giá trị đầu đến giá trị cuối.
Biến đếm tự giảm dần từ giá trị cuối đến giá trị đầu.
Tìm hiểu biết cú pháp câu lệnh lặp, các thành phần của nó và cách hoạt động.
Trong đó:
Biến đếm thường kiểu nguyên hoặc kí tự.
Giá trị đầu, giá trị cuối là các biểu thức cùng kiểu với biến đếm.
B1: S0, i1;
B2: Nếu i >100 chuyển sang B5;
B3: SS+i;
B4: ii+1 rồi quay lại B2;
B5: Đưa ra S rồi kết thúc.
V D 1: Tính tổng dãy S= 1+2+….+100.
2
Lặp với số lần lặp chưa biết trước và câu lệnh while - do
Điều kiện
Câu lệnh
ĐÚNG
SAI
Trong đó:
Điều kiện: Là biểu thức
quan hệ hoặc lôgic.

Câu lệnh: Là câu lệnh đơn hoặc ghép.
WHILE <Điều kiện> DO ;
2
Lặp với số lần lặp chưa biết trước và câu lệnh while - do
WHILE <Điều kiện> DO ;
VD2: Tính tổng s=1 + 2 + 3 +..+ N cho đến khi s > 100
B1: S0, N1;
B2: Nếu S > 100 chuyển sang B5;
B3: SS+N;
B4: NN+1 rồi quay lại B2;
B5: Đưa ra S rồi kết thúc.
2
Lặp với số lần lặp chưa biết trước và câu lệnh while - do
WHILE <Điều kiện> DO ;
VD3: Tính tổng s=1 +1/2 +1/3 +..+1/N cho đến khi 1/N <0.001
B1: S0, N1;
B2: Nếu 1/N <0.001 chuyển sang B5;
B3: SS+1/N;
B4: NN+1 rồi quay lại B2;
B5: Đưa ra S rồi kết thúc.
Cấu trúc lặp
Lặp với số lần lặp biết trước
Lặp với số lần lặp chưa biết trước
Lặp tiến
for  :=  to  do  ;
for :=  downto  do 
Lặp lùi
WHILE <Điều kiện> DO ;
nguon VI OLET