Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
1,02 MB
Nội dung
SỞ GIÁO DỤC VÀ ĐÀO TẠO NINH BÌNH TRƯỜNG THPT NHO QUAN A SÁNG KIẾN “MỘT SỐ DẠNG THUẬT TOÁN CƠ BẢN VÀ ÁP DỤNG GIẢI BÀI TOÁN TRONG KỲ THI CHỌN HỌC SINH GIỎI THPT CẤP TỈNH” Tác giả: Nguyễn Thị Quỳnh Nga Chức vụ: Giáo viên Đơn vị cơng tác: Trường THPT Nho Quan A Ninh Bình, tháng năm 2022 MỤC LỤC PHẦN 1: ĐẶT VẤN ĐỀ……………………………………………………… 1.1 Lý chọn đề tài .3 1.2 Mục tiêu đề tài 1.3 Lĩnh vực áp dụng .4 1.4 Phương pháp nghiên cứu PHẦN 2: GIẢI QUYẾT VẤN ĐỀ 2.1 Cơ sở lý luận .5 2.2 Thực trạng vấn đề trước nghiên cứu 2.3 Biện pháp thực giải vấn đề 2.3.1 Thuật toán số……………………………………………………… 2.3.2 Thuật toán vịng lặp………………………………………………….16 2.3.3 Các tốn tham khảo…………………………………………………17 2.4 Hiệu sáng kiến kinh nghiệm ……………………………………30 2.5 Điều kiện khả áp dụng …………………………………………31 2.5.1 Trước áp dụng…………………………………………………….31 2.5.2 Sau áp dụng……………………………………………………….31 PHẦN 3: KẾT LUẬN …………………………………33 3.1.Kết luận ………………………………………………………………….33 3.2 Một số kiến nghị.……………………………………………………….33 PHẦN 4: TÀI LIỆU THAM KHẢO……………………………………………35 PHẦN 1: ĐẶT VẤN ĐỀ 1.1 Lý chọn đề tài Bồi dưỡng học sinh giỏi công việc quan trọng quan tâm nhà trường, giúp nhà trường phát hạt giống tốt để bồi dưỡng trở thành nhân tài tương lai cho đất nước.Việc bồi dưỡng học sinh giỏi nhiệm vụ vất vả, khó khăn thử thách giáo viên Khi lập trình giải tốn theo tơi vấn đề mà em học sinh quan tâm lựa chọn sử dụng thuật toán cho toán với tập hợp kiến thức em học Không phải lúc với lớp tốn có cách làm mà đỏi phải sử dụng kiến thức linh hoạt Chúng ta cần đánh giá tác động giải thuật áp dụng vào tốn mức độ khác từ định hướng tìm giải thuật phù hợp Thi học sinh giỏi môn tin học thật khó, địi hỏi em phải có kiến thức vững kỹ tốt lập trình Do đó, kỳ thi học sinh giỏi tỉnh, thí sinh dự thi thường không lấy điểm trọn vẹn câu liên quan đến số thuật toán Vậy làm để em đội tuyển lĩnh hội tốt kiến thức phần tham gia ôn luyện? Làm để thi đạt kết tốt nhất? Từ lý đó, qua tìm tịi trao đổi với đồng nghiệp, định chọn đề tài: “ Một số thuật toán áp dụng giải toán kỳ thi chọn học sinh giỏi THPT cấp tỉnh” 1.2 Mục tiêu đề tài -Nâng cao chất lượng dạy học môn tin học -Giúp học sinh ôn luyên đội tuyển biết kiến thức sở -Khích lệ cổ vũ phong trào học tập học sinh đội tuyển -Tạo điều kiện thuận lợi cho học sinh có lực, có niềm đam mê, có sáng tạo học tập mơn -Giúp học sinh nâng cao kiến thức, kỹ tìm phương pháp học để học sinh yêu thích học môn Tin -Giúp cho thân người dạy đồng nghiệp bổ sung vào phương pháp dạy học, có thêm tư liệu tham khảo hữu ích trình dạy bồi dưỡng học sinh giỏi -Tăng cường trao đổi học tập kinh nghiệm từ đồng nghiệp nhằm nâng cao chuyên môn khả tự học, tự đào tạo thực phương châm học thường xuyên, học suốt đời 1.3 Lĩnh vực áp dụng - Giáo viên tham gia giảng dạy học sinh đội tuyển Tin học - Các kiến thức, kỹ cần thiết kì thi học sinh giỏi tỉnh 1.4 Phương pháp nghiên cứu Để nghiên cứu đề tài này, tơi sử dụng số nhóm phương pháp nghiên cứu sau: - Thu thập, phân tích tài liệu thông tin liên quan tới đề tài - Tìm hiểu tốn nâng cao phạm vi kiến thức ôn thi học sinh giỏi tỉnh mơn tin học - Tham khảo, tìm kiếm toán hay Website tài liệu khác, đặc biệt toán đề thi học sinh giỏi tỉnh ta tỉnh khác Từ tổng hợp, thống kê kiến thức cần thiết, dạng tập nâng cao làm nguồn tư liệu tham khảo sau - Thống kê, phân tích số liệu chất lượng thi học sinh giỏi môn Tin học để làm bật tầm quan trọng đề tài PHẦN 2: GIẢI QUYẾT VẤN ĐỀ 2.1 Cơ sở lý luận - Đảng Nhà nước vạch đường lối đắn chiến lược người “ nâng cao dân trí, đào tạo nhân lực, bồi dưỡng nhân tài” Do đó, việc nâng cao chất lượng dạy học mục tiêu trọng tâm ngành giáo dục đào tạo.Trong trường học nay, việc phát triển bồi dưỡng học sinh giỏi nhiệm vụ mũi nhọn - Chúng ta sống hệ thơng tin cơng nghệ thơng tin ngày ứng dụng rộng rãi nhiều ngành then chốt, đặc biệt ngành Giáo dục Đào tạo - Tin học mơn khoa học tự nhiên, sở, tảng nhiều lĩnh vực khoa học Nhu cầu học tập, nâng cao kiến thức say mê khám phá khoa học học sinh ngày nâng cao Vì mơn tin học ngày nhiều em học sinh quan tâm, lựa chọn mơn học ưa thích cần thiết cho Nếu học sinh thực tốt việc lựa chọn cài đặt chương trình tối ưu giải tập dạng thuật tốn nói riêng tập lập trình nói chung chất lượng học sinh giỏi nâng cao 2.2 Thực trạng vấn đề trước nghiên cứu Môn Tin học môn học đặc thù có nhiều kiến thức khó lập trình pascal lớp 11 (đây kiến thức thi học sinh giỏi tỉnh môn Tin học) thường bị xem nhẹ, bị xem “môn phụ” Học sinh – phụ huynh chưa quan tâm mực tới môn học nên việc lựa chọn bồi dưỡng học sinh giỏi vơ khó khăn Năm 2014 – 2015 tơi có phối hợp giáo viên khác tham gia công tác bồi dưỡng học sinh giỏi tỉnh môn Tin học, năm tham gia công tác bồi dưỡng học sinh giỏi Việc dạy đội tuyển chủ yếu dựa kiến thức sách giáo khoa, số thuật toán thường gặp, chưa trọng nhiều đến cải tiến chương trình tối ưu để chương trình chạy nhanh chủ yếu định hướng cho học sinh tìm thuật tốn (cách làm) để chương trình cho kết mà thơi Chính giải dạng toán bản, học sinh giáo viên thường làm việc với input có liệu nhỏ dễ nhìn thấy kết output thường không xét đến trường hợp input đặc biệt hay input có liệu lớn, cần kết Dẫn đến bị điểm nhiều điểm thi học sinh giỏi Đối với thi học sinh giỏi, dù kết output thí sinh có giống hệt với input, việc chênh lệch thời gian lựa chọn thuật tốn định thí sinh thắng hay bại (yêu cầu thời gian xử lí chương trình khơng q giây/1 test) Trong kì thi học sinh giỏi từ năm 2017 trở trước, với cấu trúc đề câu tương ứng với số điểm 6, 7, 7, có câu dạng thuật tốn bản, từ năm 2018 đến nay, với cấu trúc đề câu tương ứng với số điểm 4, 6, 4, 6, có nhiều câu liên quan đến vấn đề không 60% liệu input nhỏ vừa tầm việc thí sinh dù có làm hết hay câu đề nguy khơng giải cao Vì vậy, kết học sinh giỏi năm 2014- 2015 chưa mong muốn, có em học sinh tham gia thi học sinh giỏi THPT cấp tỉnh khơng có em đạt giải (mặc dù thi có em phấn khởi nghĩ làm tốt Đúng làm em cho kết khoảng thời gian cho phép nhỏ giây với input có liệu nhỏ cịn input có liệu lớn làm cho kết thời gian chạy chương trình 1giây, nghĩa test có liệu lớn em bị điểm) Vấn đề đặt ra, làm để lấy điểm với input có liệu lớn Muốn cần phải lựa chọn cài đặt chương trình hiệu (tối ưu) Chương trình hiệu chương trình giải input có liệu lớn, xác, dung lượng sử dụng nhớ nhỏ, thời gian thực chương trình ngắn 2.3 Biện pháp thực giải vấn đề 2.3.1 Thuật toán số Bài toán liên quan đến ước số a) Bài tốn tính tổng ước số số nguyên dương N Ví dụ: N=20, kết = 42 + TH1: N≤ 106 cách đơn giản ta làm sau: Thuật tốn: Liệt kê ước cộng chúng lại Đoạn chương trình chính: For u:=1 to N If N mod u =0 then T:=T+u; //u: biến kiểm tra ước N; T:dùng lưu tổng ước + TH2: N≥ 106 lúc thuật tốn khơng cịn phù hợp ta phải sử dụng thuật tốn khác sau: Nếu n có phân tích thành thừa số nguyên tố: N= x bj x… x ck ta có: T a i 1 b j 1 c k 1 a b c Chương trình cụ thể: function mu(a,x:longint):int64; var i:longint; begin mu:=1; for i:=1 to x mu:=mu*a; end; procedure xuly; var i,k:longint; begin T:=1; i:=2; while i