do + Hs nhắc lại cấu trúc lặp For … do + Hs phân biệt hai cấu trúc lặp trên -Về kỹ năng: + Hs rèn luyện viết các câu lệnh lặp kết hợp câu lệnh rẽ nhánh qua một vài bài toán đơn giản.. + [r]
(1)Trường THCS Đoàn Giỏi-Năm học: 2009-2010 Tuaàn 27 Tieát: 53, 54 GV: Phaïm Taán Phaùt Baøi taäp Ngày soạn: Ngaøy daïy: I./ Muïc ñích yeâu caàu: -Về kiến thức: + Nhắc lại các kiến thức câu lệnh lặp for …do + Nhắc lại cấu trúc rẽ nhánh if … then… else… + Hs nhắc lại cấu trúc lặp while + Hs nhắc lại cấu trúc lặp For … + Hs phân biệt hai cấu trúc lặp trên -Về kỹ năng: + Hs rèn luyện viết các câu lệnh lặp kết hợp câu lệnh rẽ nhánh qua vài bài toán đơn giản + Hs rèn luyện kỹ viết chương trình qua vài ví dụ đơn giản có sử dụng kết hợp While…do và if ….then … else … -Về thái độ: tích cực, cẩn thận viết chương trình II./ Chuaån bò: - GV: Máy chiếu, máy tính - HS: Sgk, ôn tập trước các bài “Câu lệnh lặp”, bài “Lặp với số lần chưa biết trước” và các bài tập bài thực hành 5,6/sgk III./ Löu yù sö phaïm: - GV: Nhấn mạnh để hs phân biệt hai câu lệnh lặp với số lần biết trước và chưa biết trước IV./ Kieåm tra baøi cuõ: (10 phuùt) -GV Nêu câu hỏi, gọi hs lên hỏi 1./ Hãy phát biểu câu lệnh lặp với số lần biết chưa biết trước, giải thích các thành phần câu lệnh? Chạy bước đoạn chương trình sau, rút nhận xét? dem:=0; -Input: n: = 5; x:= 5; 9.5; 7.5; 8; 6.2 TB:=0; ; -Out put: While dem <n + dem = ? Begin + TB = ? dem :=dem + 1; + Câu lệnh trên lặp lại lần ? Write(‘Nhap so thu ’,dem,’ = ’);readln(x); TB:=TB + x; end; 2./ Hãy phát biểu câu lệnh lặp với số lần biết chưa biết trước, giải thích các thành phần câu lệnh? Chạy bước đoạn chương trình sau, rút nhận xét? i:=2; -Input: n: = 5; -Out put: While (n mod i <>0) i:= i +1; +i=? + Câu lệnh trên lặp lại lần ? 3./ Hãy phát biểu câu lệnh lặp với số lần biết chưa biết trước, giải thích các thành phần câu lệnh? Giải bài tập 3b/sgk71 -GV nhận xét và cho điểm, nhận xét quá trình chuẩn bị nhà V./ Dạy học bài mới: Hoạt động giáo viên HĐ1: Bài tập (15 phút) 1./ Nêu cấu trúc lặp for …do và giải thích các thành phần câu lệnh ? Hoạt động hs -Hs1,2 gọi lên trả lời Trang Lop8.net Noäi dung baøi hoïc (2) Trường THCS Đoàn Giỏi-Năm học: 2009-2010 2./ Hãy cho biết số lần lặp đoạn chương trình sau ? a./ Tính tổng các số chẵn S:=0; For i:=3 to 10 If ( i mod 2) = then S:= S + i; b./ Tính tổng các số lẽ S:=0; For i:=2 to If ( i mod 2) <> then S:= S + i; GV: Phaïm Taán Phaùt a./ 10 lần b./ lần -GV: Nhắc lại cách chạy bước -Hs chú ý theo dõi HĐ2: Bài tập (20 phút) -GV: Yêu cầu hs xem chương trình vd5/sgk 59, chương trình sửa lại sau -Tất hs xem, suy nghĩ và đoán i, Bài tập S a/ Tính tổng các số nguyên từ đến 10 ? S:=0; For i:=1 to 10 S:= S + i; S:=0; For i:=1 to 10 S:= S + i; -GV: Hãy cho biết giá trị S và i lần lặp Trả lời: S=55 -GV cho hs thảo luận theo hướng dẫn Bài tập 1./ Nêu cấu trúc lặp for …do và giải thích các thành phần câu lệnh ? 2./ Hãy cho biết số lần lặp đoạn chương trình sau ? a./ Tính tổng các số chẵn S:=0; For i:=3 to 10 If ( i mod 2) = then S:= S + i; b./ Tính tổng các số lẽ S:=0; For i:=2 to If ( i mod 2) <> then S:= S + i; -Hs thảo luận theo nhóm, cử đại diện trả lời i =1, S=… ? i =2, S=… ? i =3, S= ….? i =4, S=.… ? i =5, S= ….? i =6, S=……? i =7, S=… ? i =8, S= … ? i =9, S=……? i =10, S= … ? i =11, S= ….?, nhận xét? b./ Tính tổng các số chẵn từ đến 10 S:=0; For i:=1 to 10 If ( i mod 2) = then S:= S + i; Trả lời: S=30 c./ Tính tổng các số lẽ từ đến 10 ? -GV tiến hành bài tập tương tự bài tập1 S:=0; a./ Với giá trị nào i để câu lệnh S:=S + i; -Các nhóm thảo For i:=1 to 10 thực ? If ( i mod 2) <> then luận S:= S + i; b./ Với giá trị nào i để câu lệnh S:=S + i; + Đại diện nhóm thực ? Trả lời: S=25 trả lời + Đại diện nhóm trả lời -GV yêu cầu hs cho biết số lần lặp để tính tổng bài 6/sgk 61 -GV: Hãy viết câu lệnh lặp For để thực tính tổng n lần -Hs trả lời: n lần -GV Tổng trên lần lặp phải cộng thêm giá trị -Hs xưng phong Trang Lop8.net Bài tập 3: (3) Trường THCS Đoàn Giỏi-Năm học: 2009-2010 là bao nhiêu ? GV: Phaïm Taán Phaùt lên bảng Hướng dẫn: Quan sát qui luật và trả lời Write(‘Nhap so n’);Readln(n); S:=0; For i:=1 to n S:= S + / i*(i+2); + Số 1,2,3, …,n là giá trị i lặp + Số 3,4,6,8,…,n+2 là giá trị i+2 lặp -GV củng cố, cho hs kiểm tra 15 phút qua các câu hỏi sau ? HĐ3: Bài tập (20 phút) 1./ Nêu cấu trúc lặp while…do và giải thích các thành phần câu lệnh ? 2./ Hãy cho biết số lần lặp đoạn chương trình sau ? a./ Tính tổng các số chẵn S:=0; i:=1; while i< begin If ( i mod 2) = then S:= S + i; i:=i+1; End; b./ Tính tổng các số lẽ S:=0; i:=1; while i< begin If ( i mod 2) <> then S:= S + i; i:=i+1; End; a./ Sửa bài tập 6/sgk61 b./ Hãy viết chương trình tính 2 2 -Hs lấy giấy làm tổng S= 100 kiểm tra Bài tập 4: a./ Tính tổng các số nguyên từ đến 10 ? S:=0; i:=1; while i< begin S:= S + i; i:=i+1; End; Trả lời: S=15 -Hs1,2 gọi b./ Tính tổng các số chẵn từ đến 10 lên trả lời S:=0; i:=1; a./ lần while i<= 10 b./ lần begin If ( i mod 2) = then S:= S + i; i:=i+1; End; -GV nhận xét và cho điểm Trả lời: S=30 -GV: Bài tập này đã làm tiết 43 câu lệnh for …do, viết lại câu lệnh while …do c./ Tính tổng các số lẽ từ đến 10 ? S:=0; i:=1; while i< HĐ4: Chạy thử tay các chương trình sau begin (20 phút) if( i mod 2) <> then S:= S + i; -GV: Yêu cầu hs xem chương trình -Tất hs xem, i:=i+1; vd5/sgk 59, chương trình sửa lại suy nghĩ và đoán i, End; sau S Trả lời: S=25 S:=0; i:=1; while i< begin S:= S + i; i:=i+1; End; -GV: Hãy cho biết giá trị S và i lần lặp Bài tập 5: Hãy viế chương trình -Hs chú ý theo dõi, tìm? xem lại bài tập a./ Uớc chung lớn hai trước số nguyên dương nhập từ bàn phím? b./ Viết chương trình in các ước số nguyên? c./ Viết chương trình tính tổng Trang Lop8.net (4) Trường THCS Đoàn Giỏi-Năm học: 2009-2010 -GV cho hs thảo luận theo hướng dẫn i =1, S=… ? i =2, S=… ? i =3, S= ….? i =4, S=.… ? i =5, S= ….? i =6, S=……? i =7, S=… ? nhận xét? GV: Phaïm Taán Phaùt các ước số nguyên nhập từ bàn phím? d./ Viết chương trình kiểm tra -Hs thảo luận theo số nguyên nhập từ bàn phím nhóm, cử đại diện có là số hoàn chỉnh không?Sửa trả lời lại chương trình in các số hoàn chỉnh từ 110000? -GV tiến hành bài tập tương tự bài tập1 a./ Với giá trị nào i để câu lệnh S:=S+ i thực ? b./ Với giá trị nào i để câu lệnh S:=S + i thực ? -GV yêu cầu hs thảo luận, nêu thuật toán, viết chương trình câu 3a -GV hướng dẫn, phân tích câu 3b,c,d -GV yêu cầu hs nhà viết chương trình câu 3b,c,d nộp thầy xem? (nếu làm tốt khỏi lấy điểm cho bài thực hành tới) -GV yêu cầu hs nhà xem lại -Các nhóm thảo luận + Đại diện nhóm trả lời + Đại diện nhóm trả lời -Hs trả lời: n lần -Hs xưng phong lên bảng + Câu lệnh điều kiện + Câu lệnh lặp for …do + Câu lệnh lặp while …do -Hs ghi bài tập, + Viết chương trình, chạy thử và đoán kết thảo luận, lắng các bài tập đã học để chuẩn bị cho bài kiểm tra nghe phân tích tiết HĐ5: Cuûng coá, daën doø: ( phuùt) -GV: Em đã học câu lệnh lặp dạng nào? -GV: Viết lại cú pháp câu lệnh lặp đó ngôn ngữ Pascal -GV: Về nhà học bài + Bài “Câu lệnh lặp với số lần biết trước” + Bài “Câu lệnh lặp với số lần chưa biết trước” + Bài thực hành 5, bài thực hành + Các bài tập ôn tập hôm để tuần sau kiểm tra tiết (viết) V./ Ruùt kinh nghieäm tieát daïy Trang Lop8.net (5)