Danh mục

Tài liệu học tập môn Tin cơ sở: Phần 2 - Phùng Thị Thu Hiền

Số trang: 80      Loại file: pdf      Dung lượng: 1.18 MB      Lượt xem: 29      Lượt tải: 0    
Xem trước 8 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Nội dung của tài liệu học tập bao gồm 9 chương, trong mỗi chương bao gồm các phần nội dung chủ yếu như sau: Mục tiêu của chương; Nội dung bài giảng lý thuyết; Câu hỏi thảo luận; Bài tập vận dụng. Mời các bạn cùng tham khảo nội dung phần 2 tài liệu sau đây.
Nội dung trích xuất từ tài liệu:
Tài liệu học tập môn Tin cơ sở: Phần 2 - Phùng Thị Thu Hiền CHƯƠNG 5: CÂU LỆNH LẶP Mục tiêu của chương Nắm vững: - Cú pháp và ý nghĩa các câu lệnh lặp for. - Cú pháp và ý nghĩa các câu lệnh lặp while và do while . - Các quy trình thực hiện các lệnh lặp. - Vận dụng các câu lệnh đã học để giải các bài tập trong chương 5. Nội dung của chương Nghiên cứu cơ chế hoạt động của các lệnh lặp, cách sử dụng các lệnh. 5.1. Câu lệnh lặp for Câu lệnh lặp Một trong những cấu trúc quan trọng của lập trình cấu trúc là các câu lệnh cho phép lặp nhiều lần một đoạn lệnh nào đó của chương trình. Chẳng hạn trong ví dụ về bài toán nhân theo phương pháp Ấn độ, để lặp lại một đoạn lệnh chúng ta đã sử dụng câu lệnh goto. Tuy nhiên như đã lưu ý việc dùng nhiều câu lệnh này làm chương trình rất khó đọc. Do vậy cần có những câu lệnh khác trực quan hơn và thực hiện các phép lặp một cách trực tiếp. C++ cung cấp cho chúng ta 3 lệnh lặp như vậy. Về thực chất 3 lệnh này là tương đương (cũng như có thể dùng goto thay cho cả 3 lệnh lặp này), tuy nhiên để chương trình viết được sáng sủa, rõ ràng, C++ đã cung cấp nhiều phương án cho người sử dụng lựa chọn câu lệnh khi viết chương trình phù hợp với tính chất lặp. Mỗi bài toán lặp có một đặc trưng riêng, ví dụ lặp cho đến khi đã đủ số lần định trước thì dừng hoặc lặp cho đến khi một điều kiện nào đó không còn thoả mãn nữa thì dừng … việc sử dụng câu lệnh lặp phù hợp sẽ làm cho chương trình dễ đọc và dễ bảo trì hơn. a. Cú pháp for ([] ; [] ; []) ; Vòng lặp for được định nghĩa bởi từ khóa for và được chia làm 3 phần chính, mỗi phần được ngăn cách bởi dấu chấm phẩy. Trong đó: 93  là một hay nhiều biểu thức gán (được phân cách bởi dấu ‘,’) có nhiệm vụ khởi tạo giá trị ban đầu cho các biến đếm.  < điều kiện > thường là biểu thức logic.  < dãy biểu thức> là một hay nhiều biểu thức gán (được phân cách bởi dấu ‘,’) có nhiệm vụ thay đổi trị của các biến ở .  có thể là câu lệnh đơn, khối lệnh, hoặc câu lệnh điều khiển. b. Ý nghĩa Vòng lặp for được sử dụng phần lớn trong các cấu trúc lặp. Vòng lặp for phù hợp cho cả trường hợp biết trước số lần lặp lẫn không biết trước số lần lặp. Lệnh for thực hiện như sau: B1: Thực hiện (nếu có). B2: Kiểm tra . B3: Nếu đúng thì thực hiện , sau đó thực hiện (nếu có) và quay về B2. Còn ngược lại nếu sai thì chuyển sang B4. B4: Thoát khỏi vòng lặp, và chuyển quyền điều khiển sang câu lệnh kế tiếp sau lệnh for. c. Lưu đồ False True Hình 13: Sơ đồ hoạt động của lệnh for. 94 Ví dụ 5.1: In các số từ 1 đến 10 ra màn hình. for (int x = 1; x Ví dụ 5.5: Tính tổng của dãy các số từ 1 đến 500. int main () { int i, kq = 0; for (i = 1 ; i  có thể là câu lệnh đơn, khối lệnh, hoặc câu lệnh điều khiển. b. Ý nghĩa Chừng nào mà điều kiện còn thỏa mãn thì thực hiện . Lệnh while thực hiện như sau: B1: Kiểm tra . B2: Nếu đúng thì thực hiện , sau đó quay về B1. Còn ngược lại sai thì chuyển sang B3. B3: Thoát khỏi vòng lặp, và chuyển quyền điều khiển sang câu lệnh kế tiếp sau lệnh while. c. Lưu đồ ĐK False True Hình 14: Sơ đồ hoạt động của lệnh while Chú ý: - Do được kiểm tra trước, nên phần của vòng lặp while có thể không được thực hiện lần nào. - Để bảo đảm cho vòng lặp while (…) không xác định, thì phải có ít nhất một câu lệnh trong phần thân vòng lặp có tác dụng làm thay đổi việc đánh giá lại thoát sau mỗi lần lặp. Ví dụ 5.7: Sử dụng vòng lặp while để in các số từ 1 đến 10. #include #include using namespace std; int main () { int i=1; while (i { cout Thêm biến phụ r để tính hiệu của 2 số. Sau đó đặt lại m hoặc n bằng r sao cho m > n và lặp lại. Vòng lặp dừng khi m = n. #include #include using namespace std; int main () { int m, n, r; cout > m >> n ; if (m < n) { int t = m; m = n; n = t; } // nếu m < n thì đổi vai trò hai số while (m != n) { r=m-n; if (r > n) m = r; else { m = n ; n = r ; } } cout > n ; kq = 0 ; while (m) { if (m%2) kq += n ; m >>= 1; n 5.3. Câu lệnh lặp do while a. Cú pháp do { ; } while (); Trong đó:  thường là biểu thức logic.  có thể là câu lệnh đơn, khối lệnh, hoặc câu lệnh điều khiển. b. Ý nghĩa Thực hiện cho đến khi không còn được thỏa mãn. Lệnh do while thực hiện như sau: B1: Thực hiện . B2: Kiểm tra . B3: Nếu đúng thì quay về B1. Còn ngược lại nếu sai thì chuyển sang B4. ...

Tài liệu được xem nhiều: