SKKN hướng dẫn học sinh sử dụng cấu trúc lặp giải các bài toán trong lập trình

25 46 0
SKKN hướng dẫn học sinh sử dụng cấu trúc lặp giải các bài toán trong lập trình

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HÓA TRƯỜNG THPT YÊN ĐỊNH I SÁNG KIẾN KINH NGHIỆM HƯỚNG DẪN HỌC SINH SỬ DỤNG CẤU TRÚC LẶP GIẢI CÁC BÀI TOÁN TRONG LẬP TRÌNH Người thực hiện: Lê Chí Cường Chức vụ: SKKN thuộc mơn: Giáo viên Tin Học THANH HĨA NĂM 2019 MỤC LỤC I MỞ ĐẦU 1.1 Lý chọn đề tài 1.2 Mục đích nghiên cứu 1.3 Đối tượng phạm vi nghiên cứu 1.4 Phương pháp nghiên cứu 1.5 Những điểm SKKN II NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 Cơ sở lý luận sáng kiến kinh nghiệm 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm 2.3 Giải pháp sử dụng giải vấn đề 2.4 Hiệu sáng kiến kinh nghiệm 17 III KẾT LUẬN VÀ KIẾN NGHỊ 21 3.1 Kết luận 21 3.2 Kiến nghị 21 I MỞ ĐẦU 1.1 Lý chọn đề tài Với phát triển vũ bão công nghệ thông tin, kiến thức khơng cịn tài sản riêng Học sinh tiếp nhận thông tin từ nhiều kênh, nhiều nguồn khác Các nguồn thông tin phong phú, đa chiều mà người học tiếp nhận đặt giáo dục trước yêu cầu cấp bách cần phải đổi cách dạy học Công nghệ thông tin chức cung cấp thơng tin mà cịn cơng cụ hỗ trợ tích cực dạy học; phương tiện dạy học đại, hữu ích hiệu Công nghệ thông tin giúp cho người học mở rộng hiểu biết với tầm nhìn xa, trông rộng qua hệ thống mạng kết nối nước toàn giới Vấn đề đặt với nhà trường làm để học sinh tự lực chiếm lĩnh kiến thức, tích cực, chủ động, sáng tạo, có kĩ giải vấn đề nảy sinh sống Đó thực thách thức lớn ngành giáo dục nói chung, nhà trường giáo viên nói riêng Giáo viên khơng người mang kiến thức đến cho học sinh mà cần dạy cho học sinh cách tìm kiếm, chiếm lĩnh kiến thức để đảm bảo cho việc tự học suốt đời Trước vấn đề đặt nêu mạnh dạn lựa chọn đề tài “Hướng dẫn học sinh sử dụng cấu trúc lặp giải toán lập trình” Thơng qua hướng dẫn em học sinh phát huy tốt khả tự học, chủ động, sáng tạo q trình học ngơn ngữ lập trình nói chung, cấu trúc lặp nói riêng 1.2 Mục đích nghiên cứu - Sáng kiến kinh nghiệm tơi nhằm mục đích: Nâng cao hiệu học tập học sinh học môn Tin học 11; Giúp học sinh chủ động, tích cực chiếm lĩnh tri thức cấu trúc lặp Giúp học sinh nhanh chóng xác định cơng việc lặp tốn Giúp học sinh dễ dàng diễn đạt cấu trúc lặp ngôn ngữ lập trình cụ thể Giúp học sinh khơng cịn e ngại học cấu trúc lặp nói riêng ngơn ngữ lập trình nói chung, tạo ham muốn, hứng thú học Tin học Rèn luyện khả giao tiếp, diễn đạt học sinh Nâng cao lực chuyên môn, nghiệp vụ sư phạm người giáo viên 1.3 Đối tượng phạm vi nghiên cứu - Chương trình tin học 11; - Học sinh khối 11 năm học 2018-2019 trường THPT Yên Định 1.4 Phương pháp nghiên cứu - Qua thực tiễn giảng dạy trường THPT Yên Định 1; - Qua việc tham khảo tài liệu, sách giáo khoa, sách giáo viên, viết tư liệu mạng internet, đặc biệt viết tài liệu đổi phương pháp dạy học môn Tin học; - Tham khảo ý kiến đồng nghiệp, lấy ý kiến từ phía học sinh; - Vận dụng sáng kiến vào giảng dạy lớp, đánh giá, rút kinh nghiệm sau dạy có vận dụng sáng kiến để có điều chỉnh phù hợp Trong tiết dạy giáo viên tiến hành đặt vấn đề, hướng dẫn gợi mở để học sinh tích cực, chủ động phát giải vấn đề đặt thông qua câu hỏi, thảo luận, hình ảnh, video minh họa 1.5 Những điểm SKKN - Sáng kiến kinh nghiệm phân tích tất tốn cấu trúc lặp có SGK Tin học 11, từ tốn phần ví dụ đến toán phần tập Sau số tốn có nhận xét tình lặp tốn - Sáng kiến kinh nghiệm cịn có tốn điển hình (khơng có SGK) để làm rõ hai dạng cấu trúc lặp lặp với số lần lặp biết lặp với số lần lặp chưa biết trước - Ngoài việc sử dụng ngơn ngữ lập trình Pascal để diễn đạt, tơi cịn dùng ngơn ngữ lập trình C++ (một ngơn ngữ lập phổ biến nay) để diễn đạt, coi tư liệu cho học sinh khá, giỏi giáo viên khác tham khảo II NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 Cơ sở lý luận sáng kiến kinh nghiệm - Đảng Nhà nước ta nhận thấy tầm quan trọng ngành Tin học đưa môn học vào nhà trường phổ thông môn khoa học khác năm học 2006-2007 - Chỉ thị số 55/2008/CT - BGDĐT ngày 30/9/2008 Bộ trưởng Bộ GDĐT tăng cường giảng dạy, đào tạo ứng dụng công nghệ thông tin ngành giáo dục giai đoạn 2008-2011 - Trong bối cảnh toàn ngành Giáo dục Đào tạo nỗ lực đổi phương pháp dạy học theo hướng phát huy tính tích cực chủ động học sinh hoạt động học tập Điều 24.2 Luật giáo dục nêu rõ : “Phương pháp giáo dục phổ thơng phải phát huy tính tích cực, tự giác, chủ động, sáng tạo học sinh, phù hợp với đặc điểm lớp học, môn học; bồi dưỡng phương pháp tự học, rèn luyện kỹ vận dụng kiến thức vào thực tiễn, tác động đến tình cảm, đem lại niềm vui, hứng thú học tập cho học sinh” Như vậy, thấy định hướng đổi phương pháp dạy học khẳng định, khơng cịn vấn đề tranh luận Cốt lõi việc đổi phương pháp dạy học trường phổ thông giúp học sinh hướng tới việc học tập chủ động, chống lại thói quen học tập thụ động - Dạy theo định hướng lực cho phép cá nhân hóa việc học: Trên sở mơ hình lực, người học bổ sung thiếu hụt cá nhân để thực nhiệm vụ cụ thể - Dạy theo định hướng lực trọng vào kết đầu - Dạy theo định hướng lực cịn có khả cho việc xác định cách rõ ràng cần đạt tiêu chuẩn cho việc đo lường kết + Sau hồn thành chun đề học sinh tự học, tự rèn luyện chủ động làm tập có liên quan đến cấu trúc lặp 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm Qua thực tế giảng dạy trường THPT Yên Định năm qua (từ năm 2006 đến nay), nhận thấy học đến chương trình Tin học lớp 11 đa số học sinh kêu khó, khơ khan, cứng nhắc Học sinh thường ngại đến tiết Tin học 11 Qua năm dạy Tin học 11 nhận thấy học sinh gặp nhiều khó khăn học cấu trúc lặp Học sinh khó xác định cơng việc lặp lặp lại nhiều lần toán, học sinh gặp khó khăn việc diễn đạt cấu trúc lặp vào NNLT cụ thể Tuy nhiên có số học sinh u thích mơn Tin học, thích tìm hiểu tốn khó nằm ngồi phạm vi sách giáo khoa Đây sở, tảng để cá nhân lựa chọn ôn luyện đội tuyển HSG Tin học cho trường năm qua Cấu trúc lặp cấu trúc bản, thường gặp thường dùng Hầu hết tốn thực tiễn hàng ngày có xuất cấu trúc lặp Nếu học sinh tiếp thu tốt, nắm vững, khắc sâu kiến thức cấu trúc lặp sở, tảng vững cho việc học tập, tiếp thu kiến thức tiếp theo, đặc biệt tiếp thu kiến thức kiểu mảng, kiểu xâu, 2.3 Giải pháp sử dụng giải vấn đề Dưới hướng dẫn học sinh sử dụng cấu trúc lặp giải số tốn lập trình Bài tốn 1: Các em ngồi đây, em trãi qua bậc tiểu học, em thời học bảng cửu chương Và có em bị thầy giáo, giáo phạt khơng thuộc bảng cửu chương Có nhiều hình thức mà thầy giáo, cô giáo phạt em, hình thức phạt thơng dụng nhất: Cách 1: Giáo viên phạt học sinh viết lại bảng cửu chương 100 lần Cách 2: Giáo viên yêu cầu học sinh viết viết lại bảng cửu chương ghi nhớ thơi Hoạt động giáo viên Hoạt động học sinh - Giáo viên chiếu tốn lên hình - Tiếp thu đề toán đọc để học sinh nghe theo dõi - Hỏi: Hãy xác định công việc học sinh - Tiếp nhận câu hỏi, suy nghĩ tìm phải thực lặp lặp lại? câu trả lời + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: Viết lại + Tiếp thu câu trả lời bảng cửu chương - Hỏi: Hãy cho biết bảng cửu chương - Tiếp nhận câu hỏi, suy nghĩ tìm viết lặp lặp lại bao nhiều lần câu trả lời cách phạt cách phạt 2? + Gọi học sinh đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Chính xác câu trả lời: Trong cách phạt 100 lần, cách phạt chưa biết - Kết luận: Có dạng lặp: + Dạng 1: Lặp với số lần lặp biết + Dạng 2: Lặp với số lần lặp chưa biết trước Để diễn đạt tình lặp lặp lại nhiều lần với số lần lặp biết trước ta dùng câu lệnh FOR Để diễn đạt tình lặp lặp lại nhiều lần với số lần lặp chưa biết ta dùng câu lệnh WHILE + Đứng dậy trả lời + Nhận xét, bổ sung ý + Tiếp thu câu trả lời - Chú ý lắng nghe giáo viên giảng khắc sâu hai dạng lặp thơng qua tốn Tiếp thu kiến thức, ghi nhớ để biết dùng câu lệnh FOR, dùng câu lệnh WHILE ngơn ngữ lập trình Nhận xét: Sau năm giảng dạy tơi thấy tốn toán quen thuộc học sinh, giúp học sinh thấy rõ hai dạng cấu trúc lặp Bài toán (trang 42 SGK tin 11): Tính tổng S a a 1 a a 100 Hoạt động giáo viên Hoạt động học sinh - Giáo viên chiếu tốn lên hình - Tiếp thu tốn máy chiếu đọc cho học sinh nghe theo dõi - Hỏi: Hãy xác định công việc lặp - Tiếp nhận câu hỏi, suy nghĩ tìm lặp lại toán trên? câu trả lời Gợi ý: Ban đầu khởi tạo tổng S Tiếp nhận câu hỏi, suy nghĩ tìm câu Mỗi lần ta cộng thêm phần tử vào trả lời tổng S Vậy ta phải cộng lần? + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: 101 lần + Tiếp thu câu trả lời Vậy công việc lặp lặp lại Tiếp nhận câu hỏi, suy nghĩ tìm câu tốn gì? trả lời + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: Cộng thêm + Tiếp thu câu trả lời phần tử vào tổng S, tức S:=S+1/(a+i); với i=0, 1, 2, , 100 - Hỏi: Như số lần lặp toán - Tiếp nhận câu hỏi, suy nghĩ tìm biết Vậy ta dùng câu lệnh để câu trả lời diễn đạt toán này? + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: Lệnh FOR + Tiếp thu câu trả lời - Yêu cầu: Hãy viết đoạn chương trình - Vận dụng kiến thức câu lệnh tính tổng S FOR để viết đoạn chương trình + Gọi học sinh lên bảng viết + Lên bảng viết + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác đoạn chương trình + Tiếp thu đoạn chương trình Đoạn chương trình diễn đạt Pascal: S:=0; for i:=0 to 100 S:=S+1/(a+i); Đoạn chương trình diễn đạt C++: S=0; for (i=0; i=0.0001 begin S:=S+1/(a+i); i:=i+1; end; Đoạn chương trình diễn đạt C++: S=0; i=0; While (1/(a+i)>=0.0001) { S=S+1/(a+i); i=i+1; } Bài tốn (Ví dụ trang 45 SGK tin 11): Tính tổng số chia hết cho đoạn M ; N Hoạt động giáo viên Hoạt động học sinh - Giáo viên chiếu tốn lên hình - Tiếp thu toán máy chiếu đọc cho học sinh nghe theo dõi - Hỏi: Hãy xác định công việc lặp - Tiếp nhận câu hỏi, suy nghĩ tìm lặp lại tốn trên? câu trả lời Gợi ý: Giả sử M=4; N=10 Ta làm Chú ý lắng nghe, theo dõi để biết sau: cách làm + Khởi tạo tổng S:=0; + Kiểm tra số 4, thấy số không chia hết cho không chia hết bỏ qua + Kiểm tra số 5, thấy số chia hết cộng số vào tổng S + Kiểm tra số 6, thấy số chia hết cộng vào tổng S + Kiểm tra số 7, thấy số không chia hết cho không chia hết bỏ qua + Kiểm tra số 8, thấy số không chia hết cho không chia hết bỏ qua + Kiểm tra số 9, thấy số chia hết cộng vào tổng S + Kiểm tra số 10, thấy 10 chia hết cộng 10 vào tổng S Vậy công việc lặp lặp lại gì? Tiếp nhận câu hỏi, tìm câu trả lời + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: Kiểm tra + Tiếp thu câu trả lời số đoạn [M;N] xem số có chia hết cho cho hay khơng? Nếu có cộng vào tổng S - Hỏi: Số lần lặp lần? - Tiếp nhận câu hỏi, tìm câu trả lời + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: N-M+1 lần + Tiếp thu câu trả lời - Hỏi: Dùng câu lệnh để diễn đạt tình - Tiếp nhận câu hỏi, suy nghĩ tìm lặp tốn này? câu trả lời + Gọi học sinh đứng dậy trả lời + Đứng dậy trả lời + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác câu trả lời: Lệnh FOR + Tiếp thu câu trả lời - Hỏi: Em viết đoạn chương - Tiếp nhận câu hỏi, suy nghĩ viết trình diễn đạt đoạn tính tổng số chia đoạn chương trình hết cho cho đoạn [M; N]? + Gọi học sinh lên bảng viết + Lên bảng viết + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý + Chính xác hóa đoạn chương trình + Tiếp thu đoạn chương trình Đoạn chương trình diễn đạt Pascal: S:=0; For i:=M to N if (i mod 3=0) or (i mod 5=0) then S:=S+i; Đoạn chương trình diễn đạt C++: S=0; For (i=M; iN then M:=M-N Else N:=N-M; UCLN=M; Đoạn chương trình diễn đạt C++: While (M!=N) If (M>N) M=M-N; Else N=N-M; UCLN=M; - Giáo viên mở thực chương - Quan sát chương trình, xem giáo trình viết trước cho học sinh xem viên thực hiện, củng cố kiến thức Nhận xét: Ta có UCLN a a Vì tìm UCLN hai số nguyên dương khác ta tìm cách biến đổi để số Cụ thể ta giữ lại 11 số bé thay số lớn số dư số lớn chia cho số bé Ví dụ để tìm UCLN 54 12 ta làm sau: (54;12)=(6;12)=(6;0)=0 Khi dùng phép chia lấy dư thuật tốn tìm UCLN nhanh cho kết 50 Bài toán (Câu 5a trang 51 SGK Tin 11) : Tính S n1 n n Hoạt động giáo viên Hoạt động học sinh - Giáo viên chiếu toán lên - Tiếp nhận toán hình máy chiếu đọc cho học sinh nghe theo dõi Tổng S viết sau: S 1 2 Tiếp thu dạng viết khác tổng S 50 50 - Tương tự toán 2, em cho biết: + Công việc lặp lặp lại tốn gì? + Số lần lặp lặp lại toán lần? + Dùng câu lệnh để diễn đạt? - Dựa vào toán để trả lời câu hỏi mà giáo viên đưa - Gọi học sinh lên bảng viết đoạn - Vận dụng câu lệnh FOR để viết chương trình tính tổng S trên.đoạn chương trình tính tổng S Đoạn chương trình diễn đạt Pascal: S:=0; for i:=1 to 50 S:=S+i/(i+1); Đoạn chương trình diễn đạt C++: S=0; for (i=1; i=2e-6 begin e:=e+1/p; n:=n+1; p:=p*n; end; Đoạn chương trình diễn đạt C++: e=1; p=1; n=1; While (1/p>=2e-6) { e=e+1/p; n=n+1; p=p*n; } - Giáo viên mở thực chương trình chuẩn bị trước cho học sinh - Quan sát chương trình, xem giáo viên thực hiện, củng cố kiến thức 13 quan sát Bài toán (Câu trang 51 SGK Tin 11) : Lập trình để giải tốn sau: Vừa gà vừa chó Bó lại cho tròn Ba mươi sáu Một trăm chân chẵn Hỏi có loại? Hoạt động giáo viên Hoạt động học sinh - Giáo viên chiếu toán lên - Tiếp nhận toán hình máy chiếu đọc cho học sinh nghe theo dõi Bài có nhiều cách để lập luận Chú ý theo dõi, lắng nghe giáo viên cách giảng để xác định công việc lặp Gọi x số chó; lặp lại tốn, số lần lặp, Suy số gà 36-x Mỗi chó có chân, mà tổng số chân gà chó 100 Suy số chó nhiều 25 Vậy ta kiểm tra xem số cặp (1 chó, 35 gà), (2 chó 34 gà), (25 chó 11 gà) cặp có 100 chân thỏa mãn - Hỏi: Giáo viên đặt câu hỏi - Tiếp nhận câu hỏi, suy nghĩ, dựa + Công việc lặp lặp lại vào toán học cách phân toán gì? tích để trả lời câu hỏi mà + Số lần lặp lần? giáo viên đưa + Dùng câu lệnh để diễn đạt? - Gọi học sinh lên bảng diễn đạt - Lên bảng viết đoạn chương trình ngơn ngữ lập trình cụ thể diễn đạt cách tìm số gà chó + Lấy ý kiến nhận xét, bổ sung + Nhận xét, bổ sung ý có + Chính xác đoạn chương trình + Tiếp thu đoạn chương trình Đoạn chương trình diễn đạt Pascal: For x:=1 to 25 If x*4+(36-x)*2=100 then Writeln(‘co’,x, ‘con cho va’,36-x, ‘con ga’); Đoạn chương trình diễn đạt C++: For (x=1;x

Ngày đăng: 24/07/2020, 14:58

Từ khóa liên quan

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

Tài liệu liên quan