Bài giảng Nhập môn về lập trình - Chương 5: Vòng lặp while/do-while/for

Chương 5  
Vꢀng lꢁp  
while / do-while / for  
Presenter:  
Nhập môn về lập trình (C5)  
Slide 1  
Learning outcomes  
L.O.3.1 – Liệt kê được các kiểu điều khiển và vẽ sơ đồ mô  
tả chúng.  
L.O.3.2 – Mô tả được được nguyên tắc kết hợp các kiểu  
điều khiển để mô tả các giải thuật.  
L.O.3.3 – Hiện thực được các kiểu điều khiển bằng ngôn  
ngữ C.  
L.O.3.4 – Sử dụng các cấu trúc điều khiển để giải quyết bài  
toán thực tế.  
Nhập môn về lập trình (C5)  
Slide 2  
Vòng lꢁp là gì ?  
Vꢀng lꢁp là các phát biểu điều khiển dùng để thực hiện  
một công việc nhiều lần.  
Các phát biểu thực hiện công việc trong vꢀng lꢁp gọi là  
thân vꢀng lꢁp.  
Một vꢀng lꢁp thường có các phần :  
• Khởi động vꢀng lꢁp.  
• Thân vꢀng lꢁp.  
• Điều khiển vꢀng lꢁp.  
Có thể phân loại vꢀng lꢁp theo các tiêu chuꢂn sau :  
• Điều kiện : đi trước hoꢁc đi sau.  
• Số lần lꢁp : biết trước hoꢁc không biết trước.  
Nhập môn về lập trình (C5)  
Slide 3  
Vòng lꢁp  
Phân loại  
VC++ cho phép sử dụng 3 loại vꢀng lꢁp với cú pháp như  
sau:  
• Vꢀng lꢁp while  
while (condition) statement;  
• Vꢀng lꢁp do  
do statement while (condition);  
• Vꢀng lꢁp for  
for (initopt ; condopt ; loopopt ) statement;  
Nhập môn về lập trình (C5)  
Slide 4  
Vòng lꢁp while  
Cú pháp : while (condition) statement  
Nghĩa là : trong khi điều kiện condition cꢀn đúng thì làm  
phát biểu statement.  
• condition là biểu thức luận lý điều khiển vꢀng lꢁp:  
Đúng thì lꢁp.  
Sai thì kết thúc.  
• statement có thể là phát biểu ghép { ... }.  
Vꢀng lꢁp while là vꢀng lꢁp có điều kiện đi trước và số lần  
lꢁp không biết trước.  
Nhập môn về lập trình (C5)  
Slide 5  
Vòng lꢁp while  
Lưu đồ vận hành  
Điều kiện đi trước  
Sai  
condition  
Đꢀng  
Statement  
Kꢁt thꢀc lꢂp  
Nhập môn về lập trình (C5)  
Slide 6  
Vòng lꢁp while  
Vꢃ dụ  
Tꢃnh tꢄng các số nguyên S = 1 + 2 + 3 + ... + n  
Để có thể sử dụng vꢀng lꢁp, ta cần đưa công thức tꢃnh  
dꢅy về dạng “tꢆng bước”: S(n) = G[S(n-1)]  
Theo dạng này, muốn tꢃnh giá trꢇ bước thứ n, phải có giá  
trꢇ bước thứ (n-1).  
Xuất phát cꢈa vꢀng lꢁp là tꢆ bước n=0.  
Ta có thể viết lại tꢄng trên như sau:  
S(n) = 1 + 2 + 3 + ... + (n-1) + n  
mꢁt khác ta cꢉng có:  
S(n-1) = 1 + 2 + ... + (n-2) + (n-1)  
Vậy, tꢆ (1) và (2) ta suy ra:  
S(n) = S(n-1) + n  
(1)  
(2)  
(3)  
Nhập môn về lập trình (C5)  
Slide 7  
Vòng lꢁp while  
Vꢃ dụ  
Để xác đꢇnh giá trꢇ ban đầu, tꢆ (1) ta có:  
S(1) = 1  
(4)  
tꢆ (3) ta có:  
S(1) = S(0) + 1  
(5)  
Do đó, có thể suy ra S(0)=0.  
Để dùng vꢀng lꢁp tꢃnh công thức (3), ta thay n bằng biến  
đếm i (với i = 1 n)  
Tꢆ đó, ta có các dữ kiện về vꢀng lꢁp như sau:  
• Khởi động:  
S=0, i=1  
• Thân vꢀng lꢁp:  
• Điều khiển vꢀng lꢁp while:  
thì vꢊn lꢁp)  
S=S+i, i=i+1  
i <= n (trong khi i chưa bằng n  
Nhập môn về lập trình (C5)  
Slide 8  
Vòng lꢁp while  
Vꢃ dụ  
Nhập môn về lập trình (C5)  
Slide 9  
Vòng lꢁp do-while  
Cú pháp và vận hành  
Cú pháp : do statement while (condition) ;  
Nghĩa là : làm phát biểu statement trước 1 lần, sau đó xét  
điều kiện condition, nếu đúng thì lꢁp, sai kết thúc.  
• condition là biểu thức cho kết quả đúng/sai, đúng thì lꢁp, sai thì kết  
thúc.  
• statement có thể là phát biểu ghép { ... }.  
Vꢀng lꢁp do-while là vꢀng lꢁp có điều kiện đi sau và số lần  
lꢁp không biết trước.  
Nhập môn về lập trình (C5)  
Slide 10  
Vòng lꢁp do-while  
Lưu đồ vận hành  
Statement  
Điều kiện đi sau  
Sai  
condition  
Đꢀng  
Kꢁt thꢀc lꢂp  
Nhập môn về lập trình (C5)  
Slide 11  
Vòng lꢁp do-while  
Vꢃ dụ tꢃnh giai thꢆa  
Tꢃnh giai thꢆa gt = 1 * 2 * 3 * ... * n  
Đưa về dạng lꢁp: gt(n)=gt(n-1)*n  
Tꢆ đó, ta có thể xác đꢇnh các dữ kiện vꢀng lꢁp như sau:  
• Khởi động:  
gt=1  
i=1  
• Thân:  
gt=gt*i  
i=i+1  
• Kiều kiện lꢁp:  
(i<=n)  
Nhập môn về lập trình (C5)  
Slide 12  
Vòng lꢁp do-while  
Code vꢃ dụ tꢃnh giai thꢆa  
Nhập môn về lập trình (C5)  
Slide 13  
Vòng lꢁp for  
Cú pháp và vận hành  
Cú pháp : for (initopt ; condopt ; loopopt ) statement  
Nghĩa là : làm phát biểu statement trong khi điều kiện  
condopt còn đúng.  
• initopt :  
là phát biểu khởi động vꢀng lꢁp.  
• condopt :  
• loopopt :  
là biểu thức luận lý quyết đꢇnh lꢁp hay dꢆng.  
là phát biểu điều khiển vꢀng lꢁp.  
• statement : có thể là phát biểu ghép.  
Vꢀng lꢁp for cho phép thực hiện vꢀng lꢁp có số lần lꢁp biết  
trước nếu dùng các dạng sau :  
for (đếm=cậndưới; đếm<=cậntrên ; tăng đếm ) statement  
for (đếm=cậntrên; đếm>=cậndưới ; giảm đếm ) statement  
Nhập môn về lập trình (C5)  
Slide 14  
Vòng lꢁp for  
Lưu đồ vận hành  
Initopt  
Điều kiện đi trước  
Sai  
condopt  
Đꢀng  
Kꢁt thꢀc lꢂp  
Statement  
loopopt  
Nhập môn về lập trình (C5)  
Slide 15  
Vòng lꢁp for  
Vꢃ dụ sắp thứ tự dꢅy  
Nhập môn về lập trình (C5)  
Slide 16  
Vòng lꢁp for  
Nhập trꢇ ban đầu và xử lý dꢅy  
Một trong những ứng dụng phꢄ biến cꢈa for là dùng để xử  
lý các vấn đề liên quan đến dꢅy (array).  
Nhập môn về lập trình (C5)  
Slide 17  
Vòng lꢁp for  
Vꢀng lꢁp lồng nhau  
Dùng 2 vꢀng for lồng nhau để nhập ma trận.  
Nhập môn về lập trình (C5)  
Slide 18  
Vòng lꢁp for  
In ma trận  
Dùng 2 vꢀng for lồng nhau để in ma trận.  
Nhập môn về lập trình (C5)  
Slide 19  
Vòng lꢁp for  
Tꢃnh tꢄng ma trận  
Dùng 2 vꢀng for lồng nhau để tꢃnh tꢄng 2 ma trận.  
Nhập môn về lập trình (C5)  
Slide 20  
pdf 20 trang yennguyen 21480 Free
Bạn đang xem tài liệu "Bài giảng Nhập môn về lập trình - Chương 5: Vòng lặp while/do-while/for", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_nhap_mon_ve_lap_trinh_chuong_5_vong_lap_whiledo_wh.pdf