Giáo án Tin học 8 - Tuần 27 - Dương Phước Giàu
1. 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.
- Biết lệnh ghép trong pascal.
2. Kỹ năng
- 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.
3. Thái độ
- Nghiêm túc trong học tập, có tinh thần học hỏi, sáng tạo .
Tuần: 27 Tiết 53 Ngày soạn: 10/02/2014 BÀI TẬP 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. - Biết lệnh ghép trong pascal. Kỹ năng - 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. 3. Thái độ - Nghiêm túc trong học tập, có tinh thần học hỏi, sáng tạo . II. CHUẨN BỊ - Giáo viên: Sách giáo khoa, giáo án, bài tập. - Học sinh:Sách giáo khoa, vở, viết, thước kẻ. Xem bài mới trước khi lên lớp. III. HOẠT ĐỘNG DẠY HỌC Tổ chức lớp (2’) - Ổn định tổ chức. Kiểm tra sĩ số học sinh. Kiểm tra bài cũ (5’) * Câu hỏi: - CH1: Hãy chỉ ra lỗi trong các câu lệnh sau đây: a) x:=10; while x:=10 do x:=x+5; b) x:=10; while x=10 do x=x+5; c) s:=0; n:=0; while s<=10 do n:=n+1; s:=s+n; * Trả lời: -> a) sai. Thừa dấu hai chấm trong điều kiện; b) Sai. Thiếu dấu hai chấm trong câu lệnh gán; c) thiếu các từ khóa begin và end trước và sau các lệnh n:=n+1 và s:=s+n, do đó vòng lặp trở thành vô tận. Bài mới: * Giới thiệu bài: (1’) - Trong tiết học trước ta đã hoàn thành xong nội dung về một số hoạt động lặp với số lần chưa biết trước. Để hiểu kĩ hơn về điều này hôm nay ta đi vào một số bài tập cơ bản. * Tiến trình bài dạy: TG Hoạt động giáo viên Hoạt động học sinh Nội dung 10’ Hoạt động 1: Tìm hiểu bài tập 1 1. Bài tập 1: - Hãy viết thuật tốn diễn đạt việc một bạn học thuộc lịng bài thơ cho tới khi bố mẹ kiểm tra là đã thuộc thì mới kết thúc, nếu khơng thì phải học lại. Bài giải: B1: Học thuộc lịng bài thơ. B2: Đọc cho bố mẹ nghe. B3: Nếu đã thuộc thì kết thúc; Ngược lại, quay lại B1; - Đưa ra dạng bài tập cần tìm hiểu. - Cho lớp suy nghĩ thảo luận hai phút, mời một hs lên bảng trình bày. - Cho nhận xét. Diễn giải thêm. - Theo dõi bảng. - Lên bảng. - Rút kinh nghiệm, ghi nội dung vào vở. 11’ Hoạt động2: Tìm hiểu dạng 2 2. Bài tập 2: Trong các câu lệnh lặp sau đây, câu nào sai, sai ở đâu: a) While i:=1 do t:=10; b) i:=1; while i<10 do sum :=sum+I; i:=i+1; c) while a<=b; do write (‘b khong nho hon a’); * Bài giải: - a) sai. Thừa dấu hai chấm trong câu lệnh điều kiện; - b) Sai. Vịng lặp vơ hạn do khơng cĩ câu lệnh làm thay đổi biến I; (lỗi ngữ nghĩa); - c) Sai. Vịng lặp vơ hạn do điều kiện luơn luơn đúng. - Đưa ra đề bài dạng 2. - Mời 1 hs lên bảng viết lại cú pháp câu lệnh lặp với số lần chưa biết trước. - Theo dõi, nhận xét, chỉnh sửa nội dung nếu hs trình bày cịn sai sĩt. - Từ kiến thức đã học yêu cầu hs tìm ra lỗi sai trong các câu lệnh trên. - Theo dõi. Hướng dẫn phần trình bày điều kiện nên cần gì và lệnh gán phải viết như thế nào cho đúng. - Chỉnh sửa lỗi sai.Viết ra nội dung cần chỉnh sửa. * Chú ý: Chú ý ngữ nghĩa trình bày và đặt điều kiện câu lệnh phải chính xác từng phần nếu khơng sẽ dẫn đến trường hợp lặp vơ hạn. - Đọc đề bài. - Lên bảng trình bày. - Rút kinh nghiệm nếu cĩ. - Lên bảng trình bày. - Chú ý lắng nghe. - Theo dõi, ghi bài giảng vào vở. - Ghi nhớ kiến thức. 10’ Hoạt động 3: Tìm hiểu dạng 3 3. Bài tập 3: - Đoạn lệnh sau đây: So :=1; While so<10 do writeln(so); So:=so+1; Sẽ cho kết quả gì? a. in ra các số từ 1 đến 9; b. in ra các số từ 1 đến 10; c. In ra vơ hạn các số 1, mỗi số trên một dịng; d. Khơng phương án nào đúng; -> c. Trong câu lệnh lặp điều kiện luơn luơn đúng. Trong đoạn chương trình cĩ câu lệnh tăng giá trị của I lên một đơn vị nhưng câu lệnh này khơng thực hiện được vì nằm ngồi vịng lặp, vịng lặp được thực hiện vơ tận - Đưa ra đề bài dạng 3 (dạng trắc nghiệm); - Yêu cầu học sinh viết chương trình ra giấy, chạy đoạn chương trình bằng bút (tay), kiểm tra kết quả. - Chọn đáp án nhanh nhất, nhận xét và diễn giải trình tự các bước di của một chương trình. - Đọc đề bài; - Chạy đoạn chương trình bằng tay bằng cách thảo luận nhĩm. - Chú ý theo dõi. Ghi bài vào vở. 4. Củng cố (5’) Trong cú pháp Whiledo và For do có gì khác nhau? Phát biểu thành lời cách hoạt động câu lệnh Whiledo 5. Dặn dò: (1’) Về nhà học bài và xem lại các bài tập đã làm Làm bài tập sau : viết chương trình tính tổng các số lẻ từ 1100 Tuần: 27 Tiết 54 Ngày soạn: 10/02/2014 BÀI TẬP (tt) I. MỤC TIÊU: 1. Kiến thức: - Viết chương trình Pascal sử dụng câu lệnh lặp với số lần chưa biết trước. 2. Kĩ năng: - Rèn luyện khả năng đọc chương trình, tìm hiểu tác dụng và kết hợp các câu lệnh. II. CHUẨN BỊ: GV: Sách giáo khoa, máy tính điện tử. HS: Sách, vở ,đọc bài ở nhà. III. PHƯƠNG PHÁP - Giải đáp, hướng dẫn. III. HOẠT ĐỘNG DẠY HỌC Tổ chức lớp (2’) Ổn định tổ chức. Kiểm tra sĩ số học sinh. Kiểm tra bài cũ Bài mới: * Giới thiệu bài: (1’) - Trong tiết học trước ta đã hoàn thành xong nội dung về một số hoạt động lặp với số lần chưa biết trước. Để hiểu kĩ hơn về điều này hôm nay ta đi vào một số bài tập cơ bản. * Tiến trình bài dạy: HOẠT ĐỘNG CỦA THẦY HOẠT ĐỘNG CỦA TRỊ NỘI DUNG Hoạt động 1: Nêu sự khác biệt giữa câu lệnh xác định và câu lệnh khơng xác định (15’) GV: yêu cầu học sinh nhớ lại kiến thức và trả lời các câu hỏi. Sự khác biệt: a) Câu lệnh lặp với số lần lặp cho trước chỉ thị cho máy tính thực hiện một lệnh hoặc một nhĩm lệnh với số lần đã được xác định từ trước, cịn với câu lệnh lặp với số lần lặp chưa biết trước thì số lần lặp chưa được xác định trước. b) Lệnh lặp với số lần cho trước, điều kiện là giá trị của một biến đếm cĩ giá trị nguyên đã đạt được giá trị lớn nhất hay chưa, cịn trong câu lệnh lặp với số lần lặp chưa biết trước, điều kiện tổng quát hơn nhiều, cĩ thể là kiểm tra một giá trị của một số thực c) Lệnh lặp với số lần cho trước, câu lệnh được thực hiện ít nhất một lần, sau đĩ kiểm tra điều kiện. Lệnh lặp với số lần chưa xác định trước, trước hết điều kiện được kiểm tra. Nếu điều kiện được thoả mãn, câu lệnh mới được thực hiện. Nêu sự khác biệt giữa câu lệnh xác định và câu lệnh khơng xác định. Hoạt động 2: Bài tập. 23’ ? Hãy tìm hiểu các thuật tốn sau đây và cho biết khi thực hiện thuật tốn, máy tính sẽ 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? Viết chương trình Pascal thể hiện các thuật tốn đĩ. a) Thuật tốn 1 Bước 1. S ¬ 10, x ¬ 0.5. Bước 2. Nếu S £ 5.2, chuyển tới bước 4. Bước 3. S ¬ S - x và quay lại bước 2. Bước 4. Thơng báo S và kết thúc thuật tốn. b) Thuật tốn 2 Bước 1. S ¬ 10, n ¬ 0. Bước 2. Nếu S ≥ 10, chuyển tới bước 4. Bước 3. n ¬ n + 3, S ¬ S - n quay lại bước 2. Bước 4. Thơng báo S và kết thúc thuật tốn. a) Thuật tốn 1: 10 vịng lặp được thực hiện. Khi kết thúc thuật tốn S = 5.0. Đoạn chương trình Pascal tương ứng: S:=10; x:=0.5; while S>5.2 do S:=S-x; writeln(S); b) Thuật tốn 2: Khơng vịng lặp nào được thực hiện vì ngay từ đầu điều kiện đã khơng được thỏa mãn nên các bước 2 và 3 bị bỏ qua. S = 10 khi kết thúc thuật tốn. Đoạn chương trình Pascal tương ứng: S:=10; n:=0; while S<10 do begin n:=n+3; S:=S-n end; writeln(S); a) Thuật tốn 1 Bước 1. S ¬ 10, x ¬ 0.5. Bước 2. Nếu S £ 5.2, chuyển tới bước 4. Bước 3. S ¬ S - x và quay lại bước 2. Bước 4. Thơng báo S và kết thúc thuật tốn. b) Thuật tốn 2 Bước 1. S ¬ 10, n ¬ 0. Bước 2. Nếu S ≥ 10, chuyển tới bước 4. Bước 3. n ¬ n + 3, S ¬ S - n quay lại bước 2. Bước 4. Thơng báo S và kết thúc thuật tốn. 4. Củng cố (5’) Sau từ khĩa While thì biến cĩ gán giá t rị khơng ? Cĩ thể cĩ bao nhiêu câu lệnh sau do ? 5. DẶN DỊ: (1’) Về nhà học bài Xem lại 2 câu lệnh lặp đã học: cách dùng, trường hợp dùng, cú pháp... để chuẩn bị cho kiểm tra 1 tiết, xem lại các bài tập đã làm cũng như các bài tập trong bài thực hành 6.
File đính kèm:
- Tuần 27.doc