Giáo án Tin học Lớp 11 - Bài 7: Cấu trúc lặp - Hoàng Thị Thanh Tâm - Trường THPT Thăng Long
I. Mục tiêu
1. Kiếnthức:
- Biết được lặp là gì ?
- Hiểu được cấu trúc và cách thức hoạt động của cấu trúc lặp với số lần lặp đã biết và chưa biết trước.
2. Năng lực:
Năng lực chung:
- Năng lực tự chủ và tự học.
- Năng lực giao tiếp và hợp tác.
- Năng lực sáng tạo và giải quyết vấn đề.
Năng lực đặc thù môn học cần phát triển:
NLc: Biết được các các thuật toán, viết được chương trình.
3. Phẩm chất:
- Xác định được bài toán dạng lặp với số lần đã biết hay chưa biết số lần lặp.
- Mô hình hóa các tình huống thực tiễn diễn ra có dùng cấu trúc lặp trong tin học.
- Diễn tả thuật toán bằng cấu trúc lặp bằng ngôn ngữ lập trình.
Bạn đang xem tài liệu "Giáo án Tin học Lớp 11 - Bài 7: Cấu trúc lặp - Hoàng Thị Thanh Tâm - Trường THPT Thăng Long", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Trường: THPT THĂNG LONG Tổ: LÝ - CN Họ và tên giáo viên Hoàng Thị Thanh Tâm Tên bài dạy CẤU TRÚC LẶP Môn học: Tin Học; Lớp: 11 Thời gian thực hiện: 2 tiết I. Mục tiêu 1. Kiếnthức: - Biết được lặp là gì ? - Hiểu được cấu trúc và cách thức hoạt động của cấu trúc lặp với số lần lặp đã biết và chưa biết trước. 2. Năng lực: Năng lực chung: Năng lực tự chủ và tự học. Năng lực giao tiếp và hợp tác. Năng lực sáng tạo và giải quyết vấn đề. Năng lực đặc thù môn học cần phát triển: NLc: Biết được các các thuật toán, viết được chương trình. 3. Phẩm chất: - Xác định được bài toán dạng lặp với số lần đã biết hay chưa biết số lần lặp. - Mô hình hóa các tình huống thực tiễn diễn ra có dùng cấu trúc lặp trong tin học. - Diễn tả thuật toán bằng cấu trúc lặp bằng ngôn ngữ lập trình. II. Thiết bị dạy học và học liệu SGK, máy tính, tivi. III. Tiến trình dạy học 1. Hoạt động 1: Mở đầu a) Mục tiêu: - Biết được Lặp, các dạng lặp. - Hiểu ý nghĩa lặp và cách thức hoạt động của cấu trúc lặp với số lần chưa biết trước. b) Nội dung: Giáo viên nêu bài toán: BÀI TOÁN 1: Đem 1 trang văn bản để phô-tô copy thành 10 bản. Quá trình hoạt động của máy photocopy được thực hiện như sau: Nhận lệnh: số bản copy; số bản in.? Máy photocopy thực hiện bao nhiêu bản in. Học sinh trả lời: Giáo viên đánh giá chốt kiến thức: Thực hiện lệnh: In bản mới được thực hiện chính là số bản cần photo. (lặp lại với số lần biết trước) BÀI TOÁN 2: Tài khoản điện thoại của 1 người còn 100.000 đồng. Người này thực hiện các cuộc gọi để hỏi thăm sức khỏe bạn bè. Nhà mạng sẽ thực hiện trừ tiền sau mỗi cuộc gọi. Người đó sẽ thực hiện được bao nhiêu cuộc gọi cho bạn. Học sinh trả lời: Giáo viên nhận xét chốt kiến thức: Chúng ta chưa biết trước được có bao nhiêu cuộc gọi (số lần người đó gọi điện thoại) được thực hiện nhưng hoạt động gọi điện sẽ ngừng khi tài khoản không còn tiền. c. Sảm phẩm: Đáp án đúng của bài tập. d. Tổ chức thực hiện: Thực hiện tại lớp. 2. Hoạt động 2: Hình thành kiến thức mới. a) Mụctiêu: - Hiểu nhu cầu cần sử dụng cấu trúc lặp trong thuật toán. - Hiểu được cấu trúc lặp với số lần biết trước, cấu trúc lặp kiểm tra điều kiện trước. - Biết cách vận dụng đúng đắn từng loại cấu trúc lặp vào tình huống cụ thể. b) Nội dung: Sản phẩm dự kiến Hoạt động của thầy và trò 1. Lặp * Trong một số bài toán có những thao tác phải thực hiện lặp đi lặp lại nhiều lần. Một đặc trưng của máy tính là có khả năng thực hiện hiệu quả các thao tác lặp * Các ngôn ngữ lập trình đều có các câu lệnh để mô tả cấu trúc lặp * Ví dụ: a là số nguyên và a>2, xét các bài toán sau: Bài 1: Tính và đưa ra kết quả ra màn hình tổng: S= Bài 2: Tính và đưa kết quả ra màn hình S= cho đến khi Ú Với hai bài toán trên, ta thấy để tính tổng S có nhiều điểm tương tự: + S được gán giá trị + Cộng vào tổng S một giá trị với N=1, 2, 3, 4,..... Việc cộng này được lặp lại một số lần 2. Lặp với số lần biết trước vòng lặp for .. in Có hai thuật toán Tong_1a và Tong_1b để giải bài toán 1: Thuật toán Tong_1a: Bước 1: SÑ1/a; NÑ0; Bước 2: NÑ N+1; Bước 3: Nếu N>100 thì chuyển sang bước 5 Bước 4: SÑ S+1/(a+N) rồi quay lại bước 2 Bước 5: Đưa S ra màn hình, kết thúc * Để mô tả cấu trúc lặp với số lần biết trước, 2. Vòng lặp for .. in Cú pháp for in : Trong đó: sequence là danh sách giá trị Statements là khối lệnh của for Hoạt động: Vòng lặp for sẽ thực hiện việc lặp qua từng phần tử của và với mỗi phần tử tìm được thì các câu lệnh sẽ được thực thi. Python thường dùng trong vòng lặp đó là range() và xrange() để tạo ra sequence (danh sách giá trị) cho biến chạy Hàm range(): tạo ra một list các giá trị số nguyên Cú pháp range([start], , [step]) 3. Lặp với số lần chưa biết và câu lệnh while... * Có thể xây dựng thuật toán tong_2 giải bài toán 2 Bước 1: S Ñ1/a; NÑ0; Bước 2: Nếu 1/(a+N)<0,0001 chuyển sang bước 5 Bước 3: N ÑN+1; Bước 4: SÑ S+1/(a+N) rồi quay lại bước 2 Bước 5: Đưa S ra màn hình * câu lệnh while-do có dạng Cú pháp: while expression: while-block Trong đó: expression: là điều kiện while-block: là khối lệnh của while Hoạt động: Chừng nào expression mang giá trị True, thì thực hiện toàn bộ câu lệnh trong while-block. Ngược lại, bỏ qua while-block và thực hiện câu lệnh tiếp theo. Ví dụ 1: Nghiên cứu sơ đồ khối cài đặt thuật toán Tong_2 (sgk 46) Sau là chương trình thuật toán Tong_2. * Ví dụ 2: Tìm ước số chung lớn nhất của hai số nguyên dương M, N + Thuật toán: Bước 1: Nhập M, N; Bước 2: Nếu M=N thì lấy ước số chung lớn nhất rồi chuyển bước 5 Bước 3: Nếu M>N thì M ÑM- N ngược lại NÑ N- M; Bước 4: Quạy lại bước 2; Bước 5: Đưa kết quả ra màn hình, kết thúc + Chương trình: Ví dụ: In các giá trị 2, 5, 8 ra màn hình Hoạt động 1. Lặp Gv: Giới thiệu khái niệm cấu trúc lặp Gv: nhấn mạnh là một cấu trúc quan trọng trong lập trình Pascal Gv: Đưa ví dụ có sử dụng câu trúc lặp Gv: Chỉ các phép lặp trong hai ví dụ trên? Hs: Gv: Nhận xét và bổ sung nếu thiếu Gv: Hướng dẫn học sinh thấy các phép lặp trong hai ví dụ trên. Hs: Ghi bài Hoạt động 2. Lặp với số lần biết trước và câu lệnh for-in Gv: Hãy xác định thuật toán cho ví dụ trên? Hs: Gv: Giải thích công thức về dạng lặp tiến Hs: Ghi Gv: Nêu công thức về dạng lặp lùi Hs: Ghi Gv: Giải thích cấu trúc từng câu lệnh Hs: Quan sát- ghi Hoạt động 3. Lặp với số lần chưa biết và câu lệnh while Gv: Giới thiệu cấu trúc lặp với số lần biết trước Hs: Quan sát và ghi Gv: Đưa ví dụ có sử dụng câu trúc lặp Gv: Hãy xác định thuật toán cho ví dụ trên. Gv: Hướng dẫn đọc sơ đồ. Gv: Hãy xác định thuật toán cho ví dụ trên? Hs: Gv: Đưa ví dụ tính tổng trong ví dụ bài toán 2 Hs: Quan sát Gv: Đưa ví dụ tìm ước số chung lớn nhất cho hai số nguyên dương M, N Hs: Quan sát Gv: Hãy viết thuật toán cho bài toán? Hs: Gv: Hãy viết chương trình với thuật toán đã biết? Gv: So sánh hai câu lệnh ghép vừa học có gì khác nhau? Hs: Lệnh for...in... lặp lại số lần xác định, còn lệnh while không lặp lại số lần xác định c. Sản phẩm: Kiến thức về cấu trúc lặp. d. Tổ chức thực hiện: Thực hiện trên lớp. 3. Hoạt động 3: Luyệntập a. Mục tiêu: Biết cấu trúc lặp b. Nội dung: Yêu cầu học sinh xác định: 1. Bài toán ở dạng lặp nào ? 2. Điều kiện lặp, thao tác lặp, Số lần lặp, của mỗi bài toán tính tổng? c. Sản phẩm: cấu trúc lặp được xây dựng trên bài toán tính tổng. d. Tổ chức thực hiện: Giao cho học sinh thực hiện trên lớp. 4. Hoạt động 4: Vậndụng a. Mục tiêu: Vận dụng cấu trúc lặp để viết được bài toán được giao. b. Nội dung: BT1: Lặp với số lần đã biết; số lần lặp là t, thao tác lặp là việc tính tiền lãi, cộng lãi tính được vào gốc để tính tiếp cho tháng sau. BT2: Lặp với số lần chưa biết trước; điều kiện lặp B < A. thao tác lặp là tính lãi theo tháng, cộng lãi vào biến trung gian. Tăng số tháng lên 1. c. Sản phẩm:Chương trình được viết có sử dụng cấu trúc lặp. d. Tổ chức thực hiện:Giao cho học sinh thực hiện ngoài giờ học trên.
Tài liệu đính kèm:
- giao_an_tin_hoc_lop_11_bai_7_cau_truc_lap_hoang_thi_thanh_ta.docx