Ví dụ câu lệnh lặp với số lần biết trước
Bài 8: Lặp với số lần chưa biết trước – Câu 2 trang 70 SGK tin học 8. Sự khác nhau giữa câu lệnh lặp với số lần chưa biết trước và câu lệnh lặp với số lần biết trước? Sự khác nhau giữa câu lệnh lặp với số lần chưa biết trước và câu lệnh lặp với số lần biết trước? Lời giải : Câu lệnh lặp với số lần biết trước : – Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với số lần đã được xác định từ trước. – Điều kiện là 1 giá trị của 1 biến đếm có giá trị nguyên Quảng cáoCâu lệnh lặp với số lần chưa biết trước : – Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với số lần lặp chưa biết trước. – Điều kiện tổng quát hơn, có thể là kiểm tra của 1 giá trị có thực, cũng có thể là 1 điều kiện tổng quát khác.
TG HĐ của giáo viênHĐ của học sinh Nội dungtrúc lặp. -Để học sinh hiểu đượckhái niệm lặp, giáo viên đưa ra một số ví dụ trongthực tế được tính tốn lặp đi lặp lại nhiều lần.VD1: Tính lãi cho tiền gửi Ngân hàng theo hàngtháng: Gốc của tháng sau bằng gốc + Lãi của thángtrước. VD2: Tính tổng của mộtđoạn số nguyên mà không được dùng công thức.a+N0.0001 -Bài tốn 2 có số lần lặp chưabiết trước.-Cấu trúc lặp: Có hai loại+Lặp với số lần biết trước.+Lặp với số lần chưa biết trước.-Trong NNLT có một số lệnh để mô tả cấu trúc lặpnhư trên. - Dùng bảng phụ treo lênbảng 2 thuật toán: Tong_1a và Tong_1b SGK-Gọi một số học sinh nhận xét về hai thuật toán trênthơng qua các vấn đề sau: +Thuật tốn có lặp khơng?+Lặp với số lần ? +Hai thuật tốn giống vàkhác nhau như thế nào? -Giá trị khởi tạo cho biếnđếm N; -Trong mỗi bước lặp biếnđếm N thay đổi thế nào? -Khi nào thuật toán dừng?-Đưa ra 2 dạng câu lệnh lặp trong Pascal, giải thích ýnghĩa của các thành phần trong lệnh.-quan sát thuật toán và nhận xét-Cả hai thuật tốn đều có số lần lặp là 100.-Trong thuật toán +Tong_1a:Giá trị khởi tạo cho biến N =0, sau mỗi lần lặp biếnđếm N tăng thêm 1. Thuật toán dừng khi đã lặp đủ 100lần.+Tong_1b: Giá trị khởi tạo cho biến N =101, saumỗi lần lặp biến đếm N giảm đi 1. Thuật toán dừngkhi đã lặp đủ 100 lần.-Lắng nghe và ghi bài -Ghi nhớ: giá trị đầu bao giờcũng nhỏ hơn hoặc bằng giá trị cuối và cùng kiểu với 2. Lặp có số lần biết trước và câu lệnh For-Do.Để giải quyết bài tốn 1 ta có hai cách :-Thuật tốn SGKTrong pascal có 2 loại câu lệnh lặp có số lần biết trước:Dạng tiến: For biến đếm := giá trịđầu To giá trị cuối Do Câu lệnh;Dạng lùi: For biến đếm := giá trịcuối DownTo giá trị đầu Do Câu lệnh;-Trong đó: +Biến đếm thường là biếnkiểu số nguyên. +Giá trị đầu, giá trị cuối làcác biểu thức cùng kiểu với biến đếm. Giá trị đầu phải nhỏhơn hay bằng giá trị cuối. Hoạt động của lệnh For-Do: -Ở dạng lặp tiến: Biến đếm tựtăng dần từ giá trị đầu đến giá trị cuối.Giaùo aùn tin học khối 11 Trang20 Trần Thò Kim MaiTG HĐ của giáo viênHĐ của học sinh Nội dung-Nếu giá trị đầu lớn hơn giá trị cuối thì vòng lặpkhơng được thực hiện.-Nhận xét sự thay đổi giá trị của biến đếm sau mỗivòng lặp. biến đếm.-Ở dạng lùi: Biến đếm tự giảm dần từ giá trị cuối đếngiá trị đầu. Tương ứng với mỗi giá trị biến đếm, câu lệnhsau Do thực hiện một lần.Yêu cầu HS xem SGK trang 44,45 hướng dẫn vàgiải thích một số lệnh trong ví dụ.Xem SGK và nêu lên một số ý kiến và một số câu hỏivề 2 ví dụTìm hiểu chương trình ví dụVí dụ 1: Hai chương trình cài đặt thuật tốn tong_1a vàTong_1b.SGKVí dụ 2: Tính tổng các số ngun chia hết cho 3 hoặc 5trong phạm vi từ M đến N MN.SGK-u cầu học sinh tìm hiểu thuật tốn để giải quyết bàitoán 2.-Tại sao giá trị khởi tạo N=0?Có thể N= 1 ; N= 2 ? -Điều kiện: 1a+N0.0001 có thể xét sau khi tăng giá giá trị N:=N+1được khơng? -Trong thuật tốn nhữngbước nào được lặp lại? -Thuật toán dừng khi nào?-Đưa ra cấu trúc câu lệnh While – Do trong Pascal,giải thích ý nghĩa các thành phần.-Đọc SGK và tìm hiểu thuật tốn.-Vì giá trị khởi tạo của S=1a và tại thời điểm nàychưa thực hiện bước lặp nào nên giá trị N phải là 0.-B2, B3 và B4 được lặp lại nhiều lần.-Đế khi nào điều kiện ở B2 thỏa mãn thì thuật tốndừng.-Ghi bài.Do. Để giải bài toán 2 ta dùngthuật toán như sau: B1: S:= 1a; N:=0;B2: nếu 1a+N 0.0001 thì chuyển đến B5;B3: N:=N+1; B4: S:=S+1a+N rồi quay vềB2; B5: Đưa kết quả S ra mànhình rồi kết thúc. -Từ bước 2 đến bước 4 đượclặp lại nhiều lần nếu điều kiện:1a+N 0.0001 chưa được thoả mãn.-Trong Pascal ta sử dụng câu lệnh lặp While-Do để tổ chứclặp với số lần chưa biết như sau:While điều kiện Do câu lệnh;Giaùo án tin học khối 11 Trang21 Trần Thò Kim MaiTG HĐ của giáo viênHĐ của học sinh Nội dung-Yêu cầu học sinh quan sát sơ đồ thực hiện lệnh While– Dohình 7 SGK_46 -Viết sẵn chương trình đểhọc sinh quan sát, chạy thử chương trình trong Pascal.-Trước khi đưa ra thuật tốn cho học sinh xây dựngthuật tốn tìm ƯCLN -Chạy thử chương trình vớinhiều bộ nhập M, N khác nhau.-Quan sát sơ đồ thực hiện lệnh While – Dohình 7 SGK_46 -Thực hiện dịch chươngtrình và chạy thử để kiểm tra kết quả.-Trong đó: +Điều kiện là biểu thức quanhệ hoặc logic. +Câu lệnh là một câu lệnhtrong Pascal. -Ý nghĩa: khi điều kiện cònđúng thì còn thực hiện câu lệnh sau Do sau đó lại quayvề kiểm tra điều kiện. -Ví dụ 1: chương trình của bàitốn 1-Ví dụ 2: Tìm ƯCLNM,N. thuật tốn:B1: Nếu M=N thì ƯCLN :=M; kết thúc.B2: Nếu MN thì M:=M-N rồi quay lại B1, ngược lạIN:=N-M rồi quay lại B1. Chương trình tìm ƯCLN:
|