SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ TRƯỜNG THPT HẬU LỘC I SÁNG KIẾN KINH NGHIỆM PHÂNTÍCHVÀTỐIƯUTHUẬTTOÁN “KIỂM TRATÍNHNGUYÊNTỐCỦAMỘTSỐNGUYÊN DƯƠNG” TRONGCHƯƠNGTRÌNHTINHỌC10 Người thực hiện: Phạm Ngọc Cường Chức vụ: Giáo viên Đơn vị công tác: Trường THPT Hậu Lộc SKKN thuộc lĩnh vực: Tinhọc THANH HOÁ, NĂM 2017 MỤC LỤC Mở đầu Trang 1.1 Lí chọn đề tài Trang 1.2 Mục đích nghiên cứu Trang 1.3 Đối tượng nghiên cứu Trang 1.4 Phương pháp nghiên cứu Trang Nội dung Trang 2.1 Cơ sở lí luận .Trang 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm Trang 2.3 Hiệu sáng kiến kinh nghiệm Trang 2.3.1 Tốiưuthuậttoán Trang 2.3.2 Phântích ý tưởng thuậttoán Trang 2.4 Kết đạt Trang Kết luận, kiến nghị Trang 3.1 Kết luận .Trang 3.2 Kiến nghị Trang Tài liệu tham khảo .Trang MỞ ĐẦU 1.1 Lí chọn đề tài Hiện nay, kiến thức Tinhọc lớp 10 nói chung nội dung dạy “Bài toánthuật toán” (Bài – trang 32 SGK) nói riêng gây không khó khăn cho học sinh em phải làm quen với khái niệm mới, trừu tượng so với môn học mà em học THSC Phần lớn em học sinh tỏ hào hứng học môn học mới, kiến thức mà đặc biệt kiến thức tinhọc giữ vai trò quan trọng đời sống xã hội Nhưng em lại tỏ chán nản, mệt mỏi sau học khái niệm, kiến thức trừu tượng khó hiểu, với học sinh học khoa học tự nhiên lại Từ mâu thuẫn gây nhiều khó khăn cho giáo viên, dạy có thời lượng dài (4 tiêt) Vì vậy, vai trò người giáo viên giúp học sinh tiếp cận kiến thức cách đơn giản, dễ hiểu có hứng thú quan trọng Không ảnh hưởng trực tiếp đến dạy mà ảnh hưởng đến tâm lí họchọc sinh suốt chươngtrình Sách giáo khoa Tinhọc10 xuất 10 năm (từ năm 2006) tồn số nội dung, khía cạnh nhỏ mà theo cần phântích rõ nên làm đơn giản để học sinh dễ hiểu Đó lí khiến chọn đề tài: “Phân tíchtốiưuthuậttoánkiểmtratínhnguyêntốsốnguyên dương” (Ví dụ 1, mục 3, – SGK tinhọc 10) Đây vấn đề quen thuộc, học sinh học THCS họcthuậttoán đa số em không hiểu Thuậttoán rườm rà nội dung chưa làm rõ Bản thân dạy nhiều khóa lớp 10, khóa học đặt câu hỏi sao? dạy nội dung em không trả lời Ngay hỏi số đồng nghiệp không giải thích cho học sinh hiểu Từ đó, nhận thấy đề tài mà đưa cần thiết Nhà xuất chưa có chỉnh lí phù hợp 1.2 Mục đích nghiên cứu Căn vào lí trên, nội dung đề tài nhằm mục đích giúp giáo viên dạy hiệu hơn, học sinh hiểu học Bài toánthuật toán, cụ thể thuậttoán “Kiểm tratínhnguyêntốsốnguyên dương” chươngtrìnhtinhọc lớp 10 Từ tạo hứng thú, say mê môn học, không cảm giác nhàm chán, mệt mỏi dạy có thời lượng dài (4 tiết) kiến thức tương đối khó học sinh lớp 10 1.3 Đối tượng nghiên cứu Ý tưởng thuậttoánKiểmtratínhnguyêntốsốnguyêndươngchươngtrình SGK Tinhọc lớp 10 1.4 Phương pháp nghiên cứu - PP nghiên cứu xây dựng sở lý thuyết - PP điều tra khảo sát thực tế, thu thập thông tin NỘI DUNG 2.1 Cơ sở lí luận - Dựa Sách giáo khoa Tinhọc10 để xây dựng sở lí luận - Dựa sách tài liệu tham khảo Internet để kiểm chứng 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm * Đặc điểm tình hình nhà trường: Trường THPT Hậu Lộc I có bề dày kinh nghiệm thành tích công tác giảng dạy đội tuyển học sinh giỏi cấp tỉnh ôn thi đại học Đội ngũ giáo viên nhiệt tình, tâm huyết với công tác chuyên môn em học sinh đa phần ngoan, chịu khó, phận mũi nhọn có tư tốt Là trường có chất lượng giáo dục đứng đầu huyện tốp đầu tỉnh nên chất lượng đầu vào tốt * Thực trạng vấn đề “Phân tíchtốiưuthuậttoánkiểmtratínhnguyêntốsốnguyên dương” trường THPT Hậu Lộc I là: - Về kiến thức: Học sinh bắt đầu làm quen với khái niệm Tin học, đầu làm quen với thuậttoán nên bỡ ngỡ mơ hồ - Về kỹ năng: Đây ví dụ xây dựng thuậttoán giải toán nên học sinh chưa có kỹ hình thành ý tưởng xây dựng thuậttoán - Trongtrình giảng dạy, thường xuyên đặt câu hỏi yêu cầu học sinh phải tự vận động suy nghĩ tìm cách giải khác cho toán cụ thể, từ học sinh lựa chọn thuậttoántốiưuPhân tích, giải thích cho học sinh hiểu - Thực tế, kết khảo sát chất lượng Tinhọc10 đầu năm hai lớp 10A3, 10A4 Sốkiểmtra SL % SL % SL % SL % SL 10A3 47 17 36,2 12 25,6 10 21,3 4,3 0 10A4 39 20,5 10 25,7 16 41 12,8 0 Lớp Giỏi Khá Trung bình Yếu Kém % 2.3 Giải pháp thực Xét Ví dụ 1: Kiểmtratínhnguyêntốsốnguyêndương (Mục 3, – SGK Tinhọc 10) •Xác định toán: - Input: N sốnguyên dương; - Output: “N sốnguyên tố” “N không sốnguyên tố” •Ý tưởng: Ta nhớ lại định nghĩa: Mộtsốnguyêndương N sốnguyêntố có hai ước số khác Từ định nghĩa đó, ta suy ra: - Nếu N = N không sốnguyên tố; - Nếu < N < N sốnguyên tố; - Nếu N ³ ước phạm vi từ đến phầnnguyên bậc hai N N sốnguyêntố •Thuật toán a) Cách liệt kê: Bước 1: Nhập sốnguyêndương N; Bước 2: Nếu N = thông báo N không nguyêntố kết thúc; Bước 3: Nếu N < thông báo N nguyêntố kết thúc; Bước 4: i ¬ 2; ú thông báo N sốnguyêntố kết thúc; Bước 5: Nếu i > ê ê Nû ú ë Bước 6: Nếu N chia hết cho i thông báo N không nguyêntố kết thúc; Bước 7: i ¬ i+1 quay lại bước b) Sơ đồ khối Nhập N Đúng N = 1? Sai Đúng N < 4? Sai i2 i >[ N ] ? ii+1 Sai Đúng Thông báo N nguyêntố kết thúc Sai N chia hết cho i ? Đúng Thông báo N Không nguyêntố kết thúc 2.3.1 Tốiưuthuậttoán Tại bước : Nếu N < thông báo N sốnguyêntố kết thúc Với N sốnguyêndương N < nhận giá trị N = N = (N = xét bước 1) Đây sốnguyên tố, nhiên bỏ bước thuậttoánkiểmtra N sốnguyêntố nhận giá trị Bởi bước : i N thông báo N sốnguyêntố kết thúc ; Như vậy, N = N = i = lớn Và theo bước hiển nhiên N sốnguyêntố Vậy Sách giáo khoa đưa vào bước thừa, làm cho học sinh lúng túng đặt câu hỏi lại xét N < mà không xét với số khác Sau bỏ bước 3, thuậttoánkiểmtratínhnguyêntốsốnguyêndương N : Bước 1: Nhập sốnguyêndương N; Bước 2: Nếu N = thông báo N không nguyêntố kết thúc; Bước 3: i ¬ 2; N ú thông báo N sốnguyêntố kết thúc; Bước 4: Nếu i > ê ê ë ú û Bước 5: Nếu N chia hết cho i thông báo N không nguyêntố kết thúc; Bước 6: i ¬ i+1 quay lại bước Nhập N Đúng N = 1? Sai i2 i> ii+1 Sai [ N] ? Đúng Thông báo N nguyêntố kết thúc Sai N chia hết cho i ? Đúng Thông báo N Không nguyêntố kết thúc Thuậttoán với số N nguyêndương 2.3.2 Phântích ý tưởng thuậttoán Tại bước : Nếu i > phầnnguyên N N sốnguyêntố kết thúc N úmà không xét Nếu giáo viên đặt câu hỏi : Tại lại xét i từ đến ê ê ë ú û đoạn khác hẳn nhiều học sinh không trả lời (thậm chí học sinh học tốt khoa học tự nhiên) Vậy chất ý tưởng xét i đoạn xuất phát từ đâu ? Ta xét số giá trị N: N = : có ước : N = 12 : có ước : N = 13 : có ước : 13 Ta nhận thấy : = 1*6 = 2*3 12 12 = 1*12 = 2*6 = 3*4 13 = 1*13 Tức N có ước a có ước b để a*b = N Thông thường học sinh hay tìm ước N đoạn từ đến N sau đếm xem N có ước Nhưng làm lãng phí nhiều thời gian, để tốiưu việc tìm ước N ta tìm giá trị x 1;xù đoạn từ đến N thỏa mãn : đoạn é ë ûcó ước a tương ứng đoạn [ x; N ] có ước b để a*b = N Và đoạn 1-x có ước đoạn x-N có nhiêu ước Như vậy, ta giảm việc tìm ước N đoạn [ x; N ] Vậy giá trị x ? 1;xù Giả sử đoạn é ë ûcó ước a đoạn [ x; N ] có ước b a*b = N Tăng giá trị a dần đến x đồng thời giảm giá trị b dần x, vị trí x a = b = N N Do N sốnguyêndương ước N sốnguyên ú dương nên a = b = ê ê Nû ú ë Xét số giá trị cụ thể N N ú = ta tìm ước N từ đến mà không cần Với N = 12 : ê ê ë ú û tìm đến 12 kết luận N sốnguyêntố Nú Với N = 17 : ê ê ú = ta cần tìm ước N từ đến mà không ë û cần tìm đến 17 kết luận N sốnguyêntố 2.4 Kết đạt Thông qua tiến hành nghiên cứu lớp 10A3 10A4 với đề tài “Phân tíchtốiưuthuậttoánkiểmtratínhnguyêntốsốnguyên dương” thu số kết đa số em hiểu chất vấn đề, hứng thú với môn học vận dụng vào việc hình thành ý tưởng, xây dựng thuậttoán để giải số dạng toán khác Do kết học tập em đạt tốt Để chứng minh xin đưa số kết sau: Kết khảo sát chất lượng môn Tinhọc lớp 10A3 10A4 Sốkiểmtra SL % SL % SL % SL % SL 10A3 47 17 36,2 12 25,6 10 21,3 4,3 0 10A4 39 20,5 10 25,7 16 41 12,8 0 Lớp Giỏi Khá Trung bình Yếu Kém % KẾT LUẬN VÀ KIẾN NGHỊ 3.1 Kết luận Đối với giáo viên, đề tài giúp giáo viên dạy học hiệu mà học sinh ban đầu phải tiếp cận với kiến thức trừu tượng, gây nhiều hứng thú học tập cho học sinh, làm cho dạy không nhàm chán thời lượng dài với nhiều thuậttoán khó Từ kết nghiên cứu, rút học kinh nghiệm sau: để việc dạy học đạt kết cao, trước hết phải tạo hứng thú cho học sinh Bằng cách em tìm tòi xây dựng thuậttoán giải không sử dụng thuậttoántrình bày sẵn SGK, tránh tình trạng để em tiếp thu học cách thụ động Sẵn sàng tốiưuthuậttoán có (ngay SGK) thuậttoán đảm bảo để em cảm thấy hứng thú hơn, chủ động tìm tòi sáng tạo xây dựng thuậttoán Giúp giáo viên không ngừng tìm tòi, sáng tạo để nâng cao trình độ chuyên môn nghiệp vụ sư phạm cho thân 3.2 Kiến nghị Không Tôi xin chân thành cảm ơn! XÁC NHẬN CỦA THỦ TRƯỞNG ĐƠN VỊ Thanh Hóa, ngày tháng năm 2017 Tôi xin cam đoan SKKN viết, không chép nội dung người khác Phạm Ngọc Cường TÀI LIỆU THAM KHẢO Sách giáo khoa Tinhọc10 – Nhà xuất Giáo dục năm 2006 Tham khảo thuậttoánkiểmtratínhnguyêntốsốnguyêndương Internet ... tài: Phân tích tối ưu thuật toán kiểm tra tính nguyên tố số nguyên dương (Ví dụ 1, mục 3, – SGK tin học 10) Đây vấn đề quen thuộc, học sinh học THCS học thuật toán đa số em không hiểu Thuật toán. .. 17 kết luận N số nguyên tố 2.4 Kết đạt Thông qua tiến hành nghiên cứu lớp 10A3 10A4 với đề tài Phân tích tối ưu thuật toán kiểm tra tính nguyên tố số nguyên dương thu số kết đa số em hiểu chất... thực Xét Ví dụ 1: Kiểm tra tính nguyên tố số nguyên dương (Mục 3, – SGK Tin học 10) •Xác định toán: - Input: N số nguyên dương; - Output: “N số nguyên tố “N không số nguyên tố •Ý tưởng: Ta nhớ