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  
Vong lặp  
̀
while / do-while / for  
Presenter:  
Slide 1  
Nhập môn về lập trình (C5)  
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ế.  
Slide 2  
Nhập môn về lập trình (C5)  
Vòng lặp là gì ?  
❖ In ra 5 dòng chữ “Hello”  
printf("Hello\n");  
printf("Hello\n");  
printf("Hello\n");  
printf("Hello\n");  
printf("Hello\n");  
❖ In ra 100 dòng chữ “Hello”  
Slide 3  
Nhập môn về lập trình (C5)  
Vòng lặp là gì ?  
❖ Bài toán: Nhập và tính tổng điểm của 10 sinh viên  
❖ float  
a;  
float  
sum = 0;  
scanf(“%f”, a);  
sum = sum + a;  
scanf(“%f”, a);  
sum = sum + a;  
…………………………………  
Slide 4  
Nhập môn về lập trình (C5)  
Vòng lặp là gì ?  
❖ Chương trình sẽ rất dài nếu yêu cầu nhập và tính tổng  
điểm cho 100, 200, 1000 sinh viên v.v.  
❖ Để ý thấy chương trình trên lặp đi lặp lại động tác sau  
nhiều lần:  
scanf(“%f”, a);  
sum = sum + a;  
Slide 5  
Nhập môn về lập trình (C5)  
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.  
Slide 6  
Nhập môn về lập trình (C5)  
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;  
Slide 7  
Nhập môn về lập trình (C5)  
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.  
Slide 8  
Nhập môn về lập trình (C5)  
Vòng lặp while  
Lưu đô  
̀
vâ  
̣
̀
Điều kiện đi trước  
Sai  
condition  
Đꢀng  
Statement  
Kꢁt thꢀc lꢂp  
Slide 9  
Nhập môn về lập trình (C5)  
Vòng lặp while  
❖ In ra các số từ 1 đến 10  
int count;  
count = 1; // initialize count  
printf(“%d ", count);  
count = count + 1;  
printf(“%d ", count);  
count = count + 1;  
printf(“%d ", count);  
count = count + 1;  
…………………………………………………………..  
Slide 10  
Nhập môn về lập trình (C5)  
Vòng lặp while  
Slide 11  
Nhập môn về lập trình (C5)  
Vòng lặp while  
int count;  
count = 1; // initialize count  
while (count <= 10)  
{
printf("%d ", count);  
count = count + 1;  
}
// increment count  
Slide 12  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến đếm  
❖ Bài toán:  
• Cần nhập 10 giá trị số thực, sau đó tính giá trị trung bình của 10  
giá trị trên  
gán total (tổng điểm) bằng 0  
gán biến đếm số lần nhập điểm bằng 1  
while biến đếm nhỏ hơn hoặc bằng 10  
yêu cầu người dùng nhập giá trị tiếp theo  
đọc giá trị  
cộng giá trị này vào total  
cộng biến đếm lên 1  
giá trị trung bình bằng total chia cho 10  
in giá trị trung bình  
Slide 13  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến đếm  
❖ Kỹ thuật sử dụng một biến để đếm số lần lặp  
❖ Vòng lặp dừng khi biến đếm vượt quá một số cho trước  
❖ Gọi là lặp dựa trên biến đếm (counter-controlled  
repitition)  
❖ Lặp hữu hạn vì biết trước số lần lặp  
❖ Hãy hiện thực đoạn mã giả trên vào chương trình mẫu  
Slide 14  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến đếm  
int  
counter;  
float val, total, average;  
total = 0.0;  
counter = 1;  
while (counter <= 10){  
printf("Nhap gia tri: ");  
scanf("%f", &val);  
total = total + val;  
counter = counter + 1;  
}
average = total/10.0;  
printf("Gia tri trung binh la %f", average);  
Slide 15  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến đếm  
Slide 16  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến cờ  
❖ Bài toán:  
• Viết ứng dụng tính điểm trung bình cho lớp, với số sinh viên ngẫu  
nhiên trong mỗi lần nhập điểm  
❖ Khác với bài toán trước:  
• Chúng ta không biết trước số lần nhập  
• Làm sao biết khi nào dừng nhập điểm?  
Slide 17  
Nhập môn về lập trình (C5)  
Lặp dựa trên biến cờ  
❖ Dùng biến cờ (sentinel) để báo kết thúc nhập  
❖ Giá trị biến cờ phải không lẫn lộn với giá trị nhập vào có  
nghĩa  
• Điểm là số nguyên không âm  
• Chọn giá trị biến cờ là -1  
• 95, 96, 75, 89 rồi -1  
• Trung bình điểm sẽ là (95 + 96 + 75 + 89)/4  
❖ Xây dựng giải thuật để giải bài toán  
Slide 18  
Nhập môn về lập trình (C5)  
Từ trên xuống, tinh chỉnh từng  
bước  
❖ Kỹ thuật xây dựng ứng dụng có cấu trúc chặt chẽ  
❖ Trên là một câu lệnh thể hiện chức năng chung của ứng  
dụng  
xác định điểm trung bình của lớp  
◼ Chỉ thể hiện ứng dụng, chưa đủ để viết ứng dụng C#  
◼ Bắt đầu tinh chỉnh  
Slide 19  
Nhập môn về lập trình (C5)  
Từ trên xuống, tinh chỉnh từng  
bước  
❖ Chia trên thành các tác vụ nhỏ hơn và liệt kê theo thứ tự  
thực hiện  
❖ Bước tinh chỉnh đầu tiên:  
khởi tạo biến  
nhập giá trị, tính tổng lại rồi đếm số điểm đã nhập  
tính toán và in ra điểm trung bình  
◼ Mỗi lần tinh chỉnh mô tả cùng giải thuật, chỉ khác về mức  
độ chi tiết  
◼ Ba bước chung: khởi tạo, nhập và xử lý biến, tính toán  
và xuất kết quả  
Slide 20  
Nhập môn về lập trình (C5)  
Tải về để xem bản đầy đủ
ppt 83 trang baolam 22580 Free
Bạn đang xem 20 trang mẫu của 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:

  • pptbai_giang_nhap_mon_ve_lap_trinh_chuong_5_vong_lap_while_do_w.ppt