+ GV: Phân tích hướng dẫn để Hs thấy được số lượng các phép tính ở chương trình cải tiến ít hơn so với chương trình ban đầu.. + GV: Từ những hướng dẫn giải thích trên Gv yêu cầu Hs nhận [r]
(1)Tuần 20 Tiết: 40 Ngày soạn: 13/01/2013 Ngày day: 15/01/2013 BÀI TẬP I Mục tiêu: Kiến thức: - Ôn tập câu lệnh lặp với số lần biết trước for … to … … Pascal; Kĩ năng: - Làm các bài tập câu lệnh lặp với số lần biết trước for … to … … Pascal - Viết chương trình sử dụng câu lệnh lặp lệnh ghép Pascal Thái độ: II Chuẩn bị - Gv: Sách giáo khoa, máy tính điện tử, giáo án, máy chiếu - Hs: Vở ghi, sách giáo khoa III Phương pháp: - Gv đặt vấn đề, hướng dẫn, bài tập, ôn luyện Hs vấn đáp làm việc nhóm, làm bài tập IV Tiến trình bài dạy: Ổn định lớp: (1’) 8A1: 8A2: Kiểm tra bài cũ: (5’) Câu hỏi: Cho biết lỗi sai các câu lệnh sau, vì sao? a) for i:=100 to writeln(‘A’); b) for i:=1.5 to 10.5 writeln(‘A’); c) var x:real; begin for x:=1 to 10 writeln(‘A’); end Nội dung bài mới: HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HỌC SINH Hoạt động 1: (38’) Bài tập + GV: Yêu cầu Hs từ thuật toán bài + HS: Đọc và nghiên cứu SGK tập SGK/61 viết chương trình tính dựa trên thuật toán tiết trước tổng A thực theo yêu cầu + GV: Chia lớp thành nhóm học + HS: Thảo luận nhóm và viết tập và làm các bài tập trên chương trình theo yêu cầu + GV: Yêu cầu Hs viết chương Program bai6; trình Uses Crt; Var A: Real; + GV: Hướng dẫn các em sử dụng n, i: Integer; câu lệnh lặp for <biến đếm>:=<giá BEGIN trị đầu> to <giá trị cuối> <câu Clrscr; lệnh>; Pascal, để viết chương Write(‘Nhap n: ’); Readln(n); A := 0; trình? + GV: Yêu cầu đại diện các nhóm For i := To n Do A := 1/(i*(i+2)); lên trình bày + GV: Yêu cầu các nhóm khác giải Write(‘Tong A = ’,A); Readln thích nhận xét bổ xung cho bài làm END + GV: Nhận xét, chốt nội dung + GV: Đưa yêu cầu bài tập 2: Bài + HS: Đọc yêu cầu bài toán toán cổ: Vừa gà vừa chó Bó lại cho Gv đưa và tìm hiểu nghiên tròn Ba mươi sáu Một trăm cứu bài toán trên GHI BẢNG Bài tập a Bài tập 1: * Bài toán: Bài tập SGK/61 viết chương trình tính tổng A Program bai6; Uses Crt; Var A: Real; n, i: Integer; BEGIN Clrscr; Write(‘Nhap n: ’); Readln(n); A := 0; For i := To n Do A := 1/(i*(i+2)); Write(‘Tong A = ’,A); Readln END * Bài toán: Bài toán cổ: Vừa gà vừa chó Bó lại cho tròn Ba mươi sáu Một (2) chân chẵn Tìm số lượng gà và chó + GV: Giới thiệu chương trình yêu cầu Hs tìm hiểu, giải thích chương trình này cho phép giải bài toán đặt Var ga, cho: Byte; BEGIN For ga := to 35 For cho := to 35 If (ga*2 + cho*4 = 100) and (ga + cho = 36) then Writeln(‘So ga la: ’, ga, ‘; So cho la: ’, cho); Readln END + GV: Hướng dẫn phân tích bài toán cho Hs thấy và hiểu bài toán + GV: Từ đó yêu cầu Hs cải tiến để có chương trình hiệu + GV: Hướng dẫn các em thực hiện, ý nghĩa các câu lệnh chương trình + GV: Cách thức hoạt động chương trình cải tiến + GV: Phân tích hướng dẫn để Hs thấy số lượng các phép tính chương trình cải tiến ít so với chương trình ban đầu + GV: Từ hướng dẫn giải thích trên Gv yêu cầu Hs nhận xét và rút kết luận quá trình viết chương trình + HS: Nghiên cứu chương trình Gv đưa Ý tưởng là xét tất các trường hợp và kiểm tra xem trường hợp nào thỏa mãn: ga + cho = 36 và ga*2 + cho*4 = 100 thì đó là đáp số bài toán + HS: Chú ý quan sát, tìm hiểu bài toán Hiểu chương trình + HS: Chương trình cải tiến Var ga, cho: Byte; BEGIN For cho := To 24 Do Begin ga := 36 – cho; If (2*ga + 4*cho = 100) Then Writeln(‘Ga: ’, ga, ‘, Cho: ’,cho); End; Readln END + HS: Các câu lệnh Pascal sử dụng lồng ghép với cú pháp chặt chẽ Thuật toán chương trình sau hiệu so với chương trình trước + HS: Ghi nhớ kiến thức trăm chân chẵn Tìm số lượng gà và chó Chương trình Var ga, cho: Byte; BEGIN For ga := to 35 For cho := to 35 If (ga*2 + cho*4 = 100) and (ga + cho = 36) then Writeln(‘So ga la: ’, ga, ‘; So cho la: ’, cho); Readln END Chương trình cải tiến Var ga, cho: Byte; BEGIN For cho := To 24 Do Begin ga := 36 – cho; If (2*ga + 4*cho = 100) Then Writeln(‘Ga: ’, ga,‘, Cho: ’,cho); End; Readln END + GV: Nhận xét chốt nội dung Củng cố: - Củng cố nội dung bài học Hướng dẫn và dặn dò nhà: (1’) - Học bài kết hợp SGK - Xem lại các bài tập đã làm Đọc trước nội dung bài thực hành Rút kinh nghiệm: (3)