- Hiện nay trong lí luận dạy học nói chung và lí luận dạy học môn Tin học nói riêng yêu cầu sử dụng khá nhiều phương pháp: phương pháp thảo luận, phương pháp đặt câu hỏi, phương pháp chi[r]
(1)TRƯỜNG THPT LÊ HỮU TRÁC trang ================================================ MỤC LỤC Phần A: MỞ ĐẦU Trang I Lý chọn đề tài Trang II MỤC ĐÍCH CỦA SÁNG KIẾN KINH NGHIỆM Trang III NHIỆM VỤ CỦA SÁNG KIẾN KINH NGHIỆM Trang IV PHƯƠNG PHÁP NGHIÊN CỨU .Trang Phần B: NỘI DUNG .Trang I.CƠ SỞ LÍ LUẬN……………………………………………Trang II NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU……… Trang Nội dung……………………………………………………Trang Giải vấn đề………………………………………… Trang 10 Kết thu được………………………………………… Trang 10 Phần C : KẾT LUẬN .Trang 11 Lop11.com (2) TRƯỜNG THPT LÊ HỮU TRÁC trang A PHẦN MỞ ĐẦU I LÍ DO CHỌN ĐỀ TÀI - Hiện lí luận dạy học nói chung và lí luận dạy học môn Tin học nói riêng yêu cầu sử dụng khá nhiều phương pháp: phương pháp thảo luận, phương pháp đặt câu hỏi, phương pháp chia nhóm … - Các cách thiết kế bài giảng nhằm mục đích áp dụng phương pháp bồi dưỡng cho học sinh lực ham muốn học hỏi, tư sáng tạo, lực tự giải vấn đề, rèn luyện và phát triển lực tự học sáng tạo, nghiên cứu, nghĩ và làm việc cách tư tự chủ… Đồng thời để thích ứng với phát triển tư học sinh xã hội và tiếp cận với các công nghệ tiên tiến xã hội, trên giới Bên cạnh đó, các kỹ thuật dạy học mới, vai trò người thầy có thay đổi là: “hướng dẫn học sinh biết tự mình tìm hướng giải vấn đề nảy sinh quá trình học tập, biết cách làm việc độc lập, làm việc tập thể Thầy là người định hướng, là người cố vấn giúp học sinh tự đánh giá, giúp học sinh luôn đúng đường tìm hiểu, lĩnh hội kiến thức…” - Xuất phát từ thực tiễn giảng dạy trường THPT Lê Hữu Trác tôi thấy rằng, để đạt hiệu cao phần học, tiết học cần có cách thiết kế bài giảng cho phù hợp với nội dung kiến thức; phương pháp, phương tiện dạy học phải phù hợp với đối tượng học sinh Để qua phần học, tiết học, học sinh thích thú với kiến thức mới, qua đó hiểu kiến thức đã học trên lớp, đồng thời học sinh thấy tầm quan trọng vấn đề và việc ứng dụng kiến thức trước hết để đáp ứng yêu cầu môn học, sau đó là việc ứng dụng nó vào các công việc thực tiễn đời sống xã hội (nếu có) Trong thời đại thông tin bùng nổ ngày nay, việc lập các chương trình tự hoạt động cho máy tính, máy gia dụng là cần thiết Và để làm việc đó cần có quá trình nghiên cứu, học tập ngôn ngữ lập trình lâu dài, qua đó nhà lập trình có thể chọn ngôn ngữ lập trình thích hợp Tuy nhiên thứ điều có điểm khởi đầu nó, với học sinh việc học Pascal là khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua đó giúp các em hình dung đời, cấu tạo, hoạt động ích lợi các chương trình hoạt động ================================================== Lop11.com Bùi Mai Cảnh Tổ : Tin học (3) TRƯỜNG THPT LÊ HỮU TRÁC trang ================================================ máy tính, các máy tự động…Quá đó giúp các em có thêm định hướng, niềm đam mê tin học, nghề nghiệp mà các em chọn sau này Đồng thời Pascal là ngôn ngữ có cấu trúc thể trên yếu tố: Cấu trúc mặt liệu, cấu trúc mặt lệnh, cấu trúc mặt chương trình Vậy thì chúng ta phải làm nào để sau kết thúc lớp 11 thì các em có thể nắm và hiểu nào là ngôn ngữ lập trình, cụ thể là ngôn ngữ lập trình Pascal mà ta đã nói trên Trong chương trình tin học 11 có vấn đề hay bài đã làm cho người thầy không biết bắt đầu làm cho học sinh hiểu và hình dung bài học Xuất phát từ sở trên, tôi đã chọn đề tài “PHƯƠNG PHÁP GIÚP HỌC SINH 11 HIỂU, PHÂN BIỆT ĐƯỢC LẶP VỚI SỐ LẦN BIẾT TRƯỚC VÀ CHƯA BIẾT TRƯỚC VỚI CÂU LỆNH “FOR – DO VÀ WHILE – DO” II MỤC ĐÍCH CỦA SÁNG KIẾN KINH NGHIỆM Sử dụng các ví dụ minh họa cụ thể để học sinh hiểu nào gọi là ‘lặp’ và nào là ‘lặp với số lần biết trước và lặp với số lần chưa biết trước’, đó là học sinh nắm cú pháp, ý nghĩa cấu trúc lặp Và thông qua các ví dụ đó hướng dẩn học sinh chuyển đổi qua lại hai cấu trúc lặp để học sinh phân biệt, nắm vững hai cấu trúc lặp III NHIỆM VỤ CỦA SÁNG KIẾN KINH NGHIỆM Đưa vấn đề mục 3, bài 10, tin học 11, để học sinh thảo luận qua đó nắm vững câu lệnh lặp với số lần biết trước và chưa biết trước Và hình thành học sinh kĩ phân tích, xử lý các vấn đề liên quan đến vòng lặp quá trình lập trình các chương trình đơn giản sau này IV PHƯƠNG PHÁP NGHIÊN CỨU - Kết hợp thực tiễn giáo dục trường THPT LÊ HỮU TRÁC - Có tham khảo các tài liệu ngôn ngữ lập trình Pascal và tài liệu sáng kiến kinh nghiệm Lop11.com (4) TRƯỜNG THPT LÊ HỮU TRÁC trang B NỘI DUNG I.CƠ SỞ LÍ LUẬN Khi học sinh học bài học Bài 10 “CẤU TRÚC LẶP” Học sinh đã có nhiều khó khăn, nhầm lẫn việc xác định vòng lặp và xác định điều kiện dừng vòng lặp II NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU Nội dung Trong tiết học này tôi đã trình chiếu cho các em xem vi dụ minh họa sau: lít Bình này chứa tối đa là 50 lít Ca Hình - Giáo viên đặt câu hỏi sau: Các em quan sát hình và cho biết phải đổ bao nhiêu lần thì bình đổ đầy nước và công việc gì làm làm lại nhiều lần + Học sinh trả lời là số lần thực là 50 lần và công việc làm làm là công việc đổ nước vào bình ================================================== Lop11.com Bùi Mai Cảnh Tổ : Tin học (5) TRƯỜNG THPT LÊ HỮU TRÁC trang ================================================ - Tiếp theo cho các em xem hình thứ sau: ? lít Bình này chứa tối đa là 50 lít Ca Hình Giáo viên đặt câu hỏi sau: + Các em có biết số lần thực công việc đổ nước không ? + Đổ nào thì dừng việc đổ nước? - Từ hai câu hỏi trên thì các em trả lời là: chưa biết số lần đổ và thực công việc đổ nước bình đầy thì dừng việc đổ nước lại => Từ hai hình ảnh trên chúng ta có thể giúp cho các em hiểu và biết nào là lặp và phân biết lặp với số lần biết trước và lặp với số lần chưa biết trước - Sau các em đã biết nào là lặp và phân biệt hai dạng lặp - Tiếp theo đó đưa bài toán sách giáo khoa làm ví dụ sau: Với a là số nguyên nhập từ bàn phím và a > 2, xét các bài toán sau đây: Bài Tính và đưa kết màn hình tổng S 1 1 a a 1 a a 100 Lop11.com (6) TRƯỜNG THPT LÊ HỮU TRÁC trang Bài Tính và đưa kết màn hình tổng S 1 1 a a 1 a aN Cho đến 0, 0001 aN Giáo viên đưa các câu hỏi sau: Câu Bài đã xác định lần lặp chưa? Học sinh trả lời là: đã xác định lần lặp, cụ thể cộng dồn đến a+100 Câu Em hãy viết câu lệnh lặp để tính tổng S bài 1? Học sinh viết: S:=1/a; for i:=1 to 100 S:=S+1/(a+i); Câu Bài đã xác định lần lặp chưa? Học sinh trả lời là: chưa xác định lần lặp, vì với a nhập từ bàn phím thì: 1/(a+N) < 0.0001 không xác định cụ thể N bao nhiêu Câu Em hãy viết câu lệnh lặp để tính tổng S bài 2? Học sinh viết: S:=1/a; N:=1; While 1/(a+N) < 0.0001 Begin S:=S+1/(a+N); N:=N+1; End; Giáo viên cho học sinh hoàn chỉnh chương trình dựa trên hai vòng lặp đã có trên để giải bài toán trên (sau đó Giáo viên kiểm tra) Câu Em hãy cho biết tương đồng hai bài toán trên: Học sinh trả lời: Xuất phát, S gán giá trị: 1/a; Tiếp theo, cộng dồn vào S giá trị: 1/(a+N), với N tăng từ 1,2,3… ================================================== Lop11.com Bùi Mai Cảnh Tổ : Tin học (7) TRƯỜNG THPT LÊ HỮU TRÁC trang ================================================ Câu Hai bài toán trên khác điểm nào? Học sinh trả lời: Bài toán đã biết số lần lặp cụ thể, bài toán chưa xác định lần lặp cụ thể Câu Có thể dùng câu lệnh while…do để viết vòng lặp tính tổng S bài không? Và có thể dùng câu lệnh for…do để viết vòng lặp tính tổng S bài không? Học sinh trả lơi: Việc dùng câu lệnh lặp while…do để thực vòng lặp cho câu lệnh for…do là có thể làm được, việc dùng câu lệnh for…do để thực vòng lặp cho câu lệnh while…do là không vì: + Câu lệnh for…do sau thực câu lệnh sau thì biến đếm tự động tăng lên 1, câu lệnh while…do ta có thể thực lệnh tăng biến_đếm lên cách thực câu lệnh gán biến_đếm:=biến_đếm+1 + Câu lệnh for…do kết thúc biến_đếm > Giá_trị_cuối, câu lệnh while…do ta có thể đưa điều kiện biến_đếm>Giá_trị_cuối vào điều kiện kiểm tra vòng lặp while…do, cụ thể bài ta có thể thực sau: S:=1/a; N:=1; While N <= 100 Begin S:=S+1/(a+N); N:=N+1; End; + Câu lệnh while…do thực câu lệnh điều_kiện còn đúng, nên ta không xác định đến vòng lặp thứ bao nhiêu để điều_kiên sai vì ta không thể dùng vòng lặp for…do để thực tính tổng S cho bài Lop11.com (8) TRƯỜNG THPT LÊ HỮU TRÁC trang * MỘT SỐ VÍ DỤ CHO HỌC SINH THAM KHẢO THÊM - VÍ DỤ 1: Program chuongtrinh; Uses crt; Var a,b byte; Begin Clrscr; a:=1; b=7; c:=0; while a<b begin c:=c+a; a:=a+1; end; Writeln(‘c=’ ,c:6); Readln End; a Hãy sửa lỗi sai chương trình trên ? b Kết chương trình trên là bao nhiêu ? - Sau học sinh trả lời thì ta cho học sinh xem kết để so sánh và phân tích a) Sửa: Program chuongtrinh; Uses crt; Var a,b : byte; Begin Clrscr; ================================================== Lop11.com Bùi Mai Cảnh Tổ : Tin học (9) TRƯỜNG THPT LÊ HỮU TRÁC trang ================================================ a:=1; b:=7; c:=0; while a<b begin c:=c+a; a:=a+1; end; Writeln(‘c=’,c:6); Readln; End b) Giáo viên chạy chương trình cho học sinh xem kết và giải thích từ câu lệnh - VÍ DỤ 2: Hãy viết lại đoạn chương trình sau cách sử dụng câu lệnh lặp Fordo? S:=0; i:=1; While i < = 20 Begin S:= S+1; i:= i+1; End; writeln(‘tong S =’, S:8); - Học sinh lên bảng làm sau đó đối chiếu kết S:=0; For i:= to 20 S:= S+i; writeln(‘tong S =’, S:8); - VÍ DỤ 3: Lop11.com (10) TRƯỜNG THPT LÊ HỮU TRÁC trang 10 Hãy viết lại đoạn chương trình sau cách sử dụng câu lệnh lặp Whiledo? S:=0; For i:= to 50 S:= S+i; Writeln(‘tong S =’, S:8); - Học sinh lên bảng làm sau đó đối chiếu kết S:=0; i:=1; While i < 50 Begin S:= S+1; i:= i+1; End; writeln(‘tong S =’, S:8); Giải vấn đề Trong quá trình thảo luận để giải thích, chứng minh vấn đề “khả chuyển đổi qua lại hai câu lệnh lặp” bắt buộc học sinh phải nắm vững cú pháp, ý nghĩa hai câu lệnh trên Dẫn đến việc các em thấy giống và khác hai câu lệnh cách rõ ràng Kết thu Trong quá trình trao đổi, thảo luận, trình bày học sinh thể khả vận dụng, hiểu biết mình nên các em tỏ hăng hái việc giơ tay phát biểu tranh luận Đồng thời tiết học trở nên sinh động và giáo viên không đóng vai trò là người xây dựng lý luận mà học sinh là người chủ động để giải các vấn đề ================================================== Lop11.com Bùi Mai Cảnh Tổ : Tin học (11) TRƯỜNG THPT LÊ HỮU TRÁC trang 11 ================================================ C KẾT LUẬN Ngôn ngữ lập trình nói chung đóng vai trò quan trọng việc xây dựng các chương trình ứng dụng để phục vụ cho sống Nhờ phát triển tin học - đó các nhà lập trình chuyên nghiệp đóng vai trò không nhỏ mà hầu hết các lĩnh vực xã hội đã ứng dụng tin học để giải công viêc nhanh, hiệu và chính xác Hiện nay, ngôn ngữ lập trình Pascal đã trở thành ngôn ngữ lập trình phổ biến trên giới sử dụng lĩnh vực giảng dạy Trong quá trình giảng dạy các thầy cô có thể đưa các vấn đề lập trình các game nhỏ…để các em có thể chứng tỏ khả mình làm cho học sinh yêu thích môn học, ham học hỏi và sáng tạo Đề tài này mang tính thực tiễn cao cụ thể là: Trong tiết học các em học sinh đã chủ động để tìm tòi lại kiến thức đã học qua đó giải vấn đề giáo viên đặt Trong quá trình giải vấn đề, giáo viên sai lầm mà các em học sinh mắc phải hiểu không rỏ vấn đề giúp cho các em hiểu rõ câu lệnh Kết là có nhiều em đã dễ dàng vận dụng câu lệnh lặp để giải các vấn bài toán lặp giáo viên đặt D TÀI LIỆU THAM KHẢO Sách giáo khoa tin học 11 Hồ Sĩ Đàm chủ biên Sách giáo viên tin học 11 Hồ Sĩ Đàm chủ biên Lý thuyết và Bài tập lập trình Pascal 5.5-6.0 Nguyễn Thị Kiều Duyên Lý thuyết và Bài tập lập trình Pascal – Quách Tuấn Ngọc Một số sáng kiến kinh nghiệm và ý kiến đồng nghiệp Cưmgar, ngày 11 tháng 03 năm 2011 NGƯỜI THỰC HIỆN BÙI MAI CẢNH Lop11.com (12)