Bài 8. Lặp với số lần chưa biết trước

3 289 0
Bài 8. Lặp với số lần chưa biết trước

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài 8. Lặp với số lần chưa biết trước tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các...

Trường THCS Quảng Thành Tiết 50 Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC I.Mục tiêu: - Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước trong ngôn ngữ lập trình; - Biết ngôn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc đến khi một điều kiện nào đó được thoả mãn; - Nhận biết được đâu là hoạt động lặp với số lần chưa biêt trước. - Nghiêm túc trong quá trình nghiên cứu và thực hành. II. Chuẩn bị GV: SGK, máy chiếu, phim trong các ví dụ về chương trình HS: Xem trước bài ở nhà III. Tiến trình bài giảng 1. Ổn định lớp 2. Kiểm tra bài củ Viết thuật toán tính tổng 100 số tự nhiên đầu tiên 1,2,3,…,99,100 Trả lời Bước 1. SUM ← 0; i ← 0. Bước 2. i ← i + 1. Bước 3. Nếu i ≤ 100, thì SUM ← SUM + i và quay lại bước 2. Bước 4. Thông báo kết quả và kết thúc thuật toán. 3. Bài mới Hoạt động của GV và HS Nội dung + G : y/c hs đọc ví dụ 1sgk/67 + Hs : 2-3 hs đọc ví dụ sgk + G : Phân tích ví dụ + Hs : Chú ý lắng nghe + G : y/c hs đọc ví dụ 1sgk/67 + Hs : 2-3 hs đọc ví dụ sgk + G : Phân tích ví dụ + Hs : chú ý lắng nghe + G : Hướng dẫn hs xây dựng thuật toán + Hs : Nghe giáo viên hướng dẫn, sau đó tự xây dựng thuật toán + G : Chạy tay cho học sinh xem ( Chỉ nên chạy tay thử từ 1 đến 10 ) + Hs : Chú ý nghe . Hs ghi vở ví dụ 2 1. Các hoạt động lặp với số lần chưa biết trước a/ Ví dụ 1(sgk). b/ Ví dụ 2 : Nếu cộng lần lượt n số tự nhiên đầu tiên (n = 1, 2, 3, .), Cần cộng bao nhiêu số tự nhiên đầu tiên để ta nhận được tổng T n nhỏ nhất lớn hơn 1000? Giải : Kí hiệu S là tổng cần tìm và ta có thuật toán như sau: + Bước 1. S ← 0, n ← 0. + Bước 2. Nếu S ≤ 1000, n ← n + 1; ngược lại chuyển tới bước 4. + Bước 3. S ← S + n và quay lại bước 2. + Bước 4. In kết quả : S và n là số tự nhiên nhỏ nhất sao cho S > 1000. Kết thúc thuật toán. * Ta có đồ khối : Giáo viên: Hoàng Đức Kiên Trường THCS Quảng Thành + G : Giới thiệu đồ khối + G : Nêu nhận xét + G : Có thể sử dụng lệnh lặp với số lần lặp chưa biết trước trong các chương trình lập trình . Sau đây ta xét câu lệnh và ví dụ trong TP + G : Giới thiệu cú pháp lệnh while … do ….; + hs : chú ý nghe và ghi chép + Gv : Xét ví dụ 3 Chúng ta biết rằng, nếu n càng lớn thì 1 n càng nhỏ, nhưng luôn luôn lớn hơn 0. Với giá trị nào của n thì 1 n < 0.005 hoặc 1 n < 0.003 ? ( Gv đưa phim trong ví dụ 3 ) + Hs : Đọc ví dụ 3 + G : giới thiệu chương trình mẫu sgk ( Giáo viên in chương trình mẫu trên) + Hs : quan sát + Gv : Chạy tay cho học sinh xem + Hs : chú ý nghe và tự chạy tay lại + Gv : Yêu cầu học sinh mở máy tính và mở chương trình ví dụ 3 ( giáo viên chuẩn bị chương trình mẫu và đưa lên các máy ) + Hs : thực hiện + G : Cho học sinh chạy chương trình trên máy + Hs : thực hiện + G : Yêu cầu hs thay điều kiện sai_so = 0.003 thành 0.002 ; 0.001 ; 0.005 ; . + Hs : thực hiện * Nhận xét : Để viết chương trình chỉ dẫn máy tính thực hiện các hoạt động lặp như trong các ví dụ trên, ta có thể sử dụng câu lệnh có dạng Trường THCS Thạnh Đông Kế hoạch học Tin Học Tuần 25 - Tiết 48 Ngày dạy: 27/02/2017 Bài 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC MỤC TIÊU: 1.1 Kiến thức: * Hoạt động 1: - Học sinh biết cú pháp, ngữ nghĩa, hoạt động câu lệnh While - Học sinh hiểu ví dụ sách giáo khoa đưa ra, qua hiểu câu lệnh lặp với số lần chưa xác định trước While * Hoạt động 2: - Học sinh biết lỗi lập trình cần tránh sử dụng câu lệnh While do: Lặp vô hạn lần 1.2 Kĩ năng: • Hs thực được: - Học sinh thực việc nêu cú pháp, ngữ nghĩa, hoạt động câu lệnh While do; Sử dụng lệnh While giải số tập đơn giản • Hs thực thành thạo: - Học sinh thực thành thạo việc phân tích toán, chương trình để hiểu chương trình Sử dụng lệnh While giải số tập đơn giản 1.3 Thái độ: • Thói quen: - Học sinh thói quen tự rèn luyện môn học có ý thức học tập môn, ham thích tìm hiểu tư khoa học • Tính cách: - Rèn luyện tính kiên trì học tập, rèn luyện NỘI DUNG BÀI HỌC: - Ví dụ lệnh lặp với số lần chưa biết trước - Lặp vô hạn lần- Lỗi lập trình càn tránh CHUẨN BỊ: 3.1 Giáo viên: Giáo án; ĐDDH 3.2 Học sinh: Học cũ, xem trước TỔ CHỨC CÁC HOẠT ĐỘNG HỌC TẬP: 4.1 Ổn định tổ chức kiểm diện (2 phút) Giáo viên ổn định tổ chức kiểm diện học sinh 4.2 Kiểm tra miệng: Không kiểm tra miệng 4.3 Tiến trình học: Giáo viên: Nguyễn Hữu Khoa Trường THCS Thạnh Đông Kế hoạch học Tin Học HOẠT ĐỘNG CỦA GV VÀ HS NỘI DUNG BÀI HỌC Hoạt động 1: Ví dụ lệnh lặp với số lần Ví dụ lệnh lặp với số lần chưa biết chưa biết trước: (30 phút) trước Gv: Giới thiệu câu lệnh lặp While Trong Pascal câu lệnh lặp với số lần chưa Hs: Nghe giảng chép đầy đủ biết trước có dạng: while ; đó: - điều kiện thường phép so sánh; - câu lệnh câu lệnh đơn giản hay câu lệnh ghép Câu lệnh lặp thực sau: Kiểm tra điều kiện Gv: Yêu cầu HS đọc ví dụ (68 - SGK) Hs: Đọc ví dụ Gv: Phân tích chương trình Sgk để học sinh hiểu câu lệnh while…do Hs: Theo dõi ghi chép Gv: Cho HS xem chương trình chạy máy Hs: Quan sát Gv: Thực ví dụ 4, phân tích chương trình để học sinh hiểu Hs: Quan sát, lắng nghe phân tích để hiểu chương trình Gv: Yêu cầu HS đọc ví dụ (69 - SGK) Hs: Đọc ví dụ Gv: Chạy tay (cả hai chương trình) cho học sinh xem Hs: Chú ý quan sát tự chạy tay lại Gv: So sánh kết chạy hai chương trình Hs: Hai kết Giáo viên: Nguyễn Hữu Khoa Nếu điều kiện SAI, câu lệnh bị bỏ qua việc thực lệnh lặp kết thúc Nếu điều kiện đúng, thực câu lệnh quay lại bước Ví dụ 3: Sgk (Trang 68) Ví dụ 4: Sgk (Trang 69) - Nếu chạy chương trình ta nhận n = 45 tổng lớn 1000 1034 Ví dụ 5: Viết chương trình tính tổng T = 1+ 1 + + + 100 Đoạn chương trình sử dụng lệnh lặp for… do: T:=0; for i:=1 to 100 T:=T+1/i; writeln(T); Đoạn chương trình sử dụng lệnh lặp while…do: T:=0; i:=1; while ib (chứa phép so sánh)  Câu lệnh là Write(‘a>b’) và a:=a-1 (câu lệnh ghép) 2 Ví dụ về lệnh lặp với số lần chưa biết. .. Pascal câu lệnh lặp với số lần chưa biết trước có dạng: While do ; - Về nhà học bài Làm bài tập 2 Sgk trang 71 - Tìm thêm một vài ví dụ về hoạt động lặp với số lần chưa biết trước - Xem trước VD3, VD4, VD5, Lặp vô hạn lần Lỗi lập trình cần tránh ... sánh)  Câu lệnh là Write(‘a>b’) và a:=a-1 (câu lệnh ghép) 2 Ví dụ về lệnh lặp với số lần chưa biết trước: VD: Dùng câu lệnh lặp While … Do để viết chương trình thể hiện thuật tốn trong Ví dụ 2 (Sgk) var S,n: integer; Begin S:=0; n:=0; Hãy nêu Cú Pháp câu lệnh lặp while S1000’);... < 10 do Begin writeln(s); s:=s+1; end; A In ra cáccsố từ 1 đến 9 In ra cá số từ 1 đến 9 B In ra cáccsố từ 1 đến 10 In ra cá số từ 1 đến 10 C In ra cáccsố 1 In ra cá số 1 D Không phương án nào đúng Không phương án nào đúng 23 30 29 26 28 10 11 13 15 16 17 19 12 14 18 20 21 25 27 22 24 6 7 0 1 3 5 9 2 4 8 Câu 4: Thuật toán sau thực hiện bao nhiêu vòng lặp? Khi kết thúc, giá trò của S bằng bao nhiêu? -Trường Trung học Cơ sở Phường 4 Giáo án Tin học 8 GIÁO ÁN MƠN TIN HỌC TUẦN 26 Tiết PPCT: 13 Tiết TKB: 3 LỚP: 8/1 Ngày soạn : 27/02/2010 Ngày dạy : 02/03/2010 GVHD: La Thị Huyền Đan SV dạy: Trần Ngọc Khoa BÀI 8. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC I. MỤC TIÊU - Kiến thức: + Biết nhu cầu cần có cấu trúc lặp với số lần chưa biết trước trong ngơn ngữ lập trình. + Biết ngơn ngữ lập trình dùng cấu trúc lặp với số lần chưa biết trước để chỉ dẫn máy tình thực hiện lặp đi lặp lại cơng việc đến khi một điều kiện nào đó được thỏa mãn. + Hiểu hoạt động của câu lệnh lặp với số lần chưa biết trước While do trong Pascal. - Kỹ năng: vận dụng được câu lệnh While do để giải các bài tập có cấu trúc lặp với số lần chưa biết trước. - Thái độ: tập trung, tích cực trong giờ học. II. CHUẨN BỊ - GV: giáo án, sgk, bảng phụ. - HS: xem kỹ bài cũ, đọc trước bài mới. III. TIẾN TRÌNH BÀI DẠY HĐ1: Kiểm tra bài cũ, đặt vấn đề vào bài mới ( 8’) - HS: (?) Câu lệnh For to do dùng để làm gì? (?) Cho biết cấu trúc của câu lệnh lặp For to do? Bài 8. Lặp với số lần chưa biết trước 1 Trường Trung học Cơ sở Phường 4 Giáo án Tin học 8 + Cho đoạn chương trình sau Var i, j: in te ge r; be gi n j := 0; F or i := 1; t o 3 do j := j+ i ; en d; (?) Hãy kiểm tra xem chương trình có lỗi hay khơng và cho biết sau khi thực hiện chương trình, biến j sẽ mang giá trị bằng bao nhiêu? - GV nhận xét, cho điểm. - Đặt vấn đề vào bài mới: Xét bài tốn sau: “Tính tổng S của 100 số tự nhiên đầu tiên 1, 2, 3, 100. S = 1 + 2 + 3 + … + 100”. Với bài tốn trên, ta nhận thấy tổng S sẽ được tính sau 99 lần lặp lại thao tác cộng, ta dễ dàng giải quyết bài tốn bằng lệnh lặp For to do trong Turbo Pascal. Nhưng nếu như bài tốn trên trở thành “Tính tổng S các số tự nhiên đầu tiên S = 1 + 2 + 3 + … cho đến khi S>1000”. Vấn đề đặt ra ở đây là chúng ta phải thực hiện thao tác cộng bao nhiêu lần để điều kiện S>1000 được thỏa mãn. Rõ ràng ta thấy xuất hiện sự lặp lại thao tác cộng với số lần chưa biết trước. Vậy, lặp với số lần chưa biết trước là như thế nào? Trong ngơn ngữ lập trình Pascal được thể hiện ra sao? Để tìm hiểu kỹ hơn về vấn đề này, chúng ta vào bài 8. Bài 8. LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC Trước tiên ta cần hiểu rõ thế nào là lặp với số lần chưa biết trước thơng qua một số ví dụ. Bài 8. Lặp với số lần chưa biết trước 2 Trường Trung học Cơ sở Phường 4 Giáo án Tin học 8 HĐ2: 1) Tìm hiểu một số ví dụ về Các hoạt động lặp với số lần chưa biết trước (20’) HOẠT ĐỘNG CỦA GV HOẠT ĐỘNG CỦA HS NỘI DUNG a) GV cho một số ví dụ - Gieo hai hạt xí ngầu cho đến khi được hai mặt có cùng số nút. (?) Phải gieo bao nhiêu lần? (?) Khi nào ngừng gieo? - Thử nhiều chìa khóa vào một ổ khóa cho đến khi tìm được đúng chìa khóa của ổ khóa. (?) Phải thử bao nhiêu lần? (?) Khi nào ngừng thử? - HS ghi nhận - Khơng thể biết trước. - Khi hai mặt cùng số nút. - HS ghi nhận ... DUNG BÀI HỌC Hoạt động 1: Ví dụ lệnh lặp với số lần Ví dụ lệnh lặp với số lần chưa biết chưa biết trước: (30 phút) trước Gv: Giới thiệu câu lệnh lặp While Trong Pascal câu lệnh lặp với số lần chưa. .. 2: Lặp vô hạn lần - Lỗi lập trình cần tránh: (5 phút) Gv: Đưa ví dụ Sgk, ? chương trình lặp lần? Vì sao? Hs: Trả lời Gv: Khi viết chương trình sử dụng cấu trúc lặp cần ý tránh tạo nên vòng lặp. .. cho câu lệnh for…do Lặp vô hạn lần - Lỗi lập trình cần tránh Khi viết chương trình sử dụng cấu trúc lặp cần ý tránh tạo nên vòng lặp không kết thúc Ví dụ: Sgk  Khi thực vòng lặp, điều kiện câu

Ngày đăng: 30/09/2017, 03:27

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan