Trường THCS Hải Tân Sáng kiến kinh nghiệm A PHẦN MỞ ĐẦU I LÝ DO CHỌN ĐỀ TÀI Môn Tinhọc trường phổ thông trang bị cho học sinh hiểu biết công nghệ thông tin vai trò xã hội đại Môn học giúp học sinh bước đầu làm quen với phương pháp giải vấnđề theo quy trình công nghệ kỹ sử dụng máy tính phục vụ học tập sống Tinhọc có ý nghĩa to lớn phát triển trí tuệ, tư thuật toán, gópphần hính thành họcvấn phổ thông cho học sinh Với tu em học sinh THCS lậptrình môn trừu tượng, khó tiếp thu Trongtrìnhdạy nhận thấy em học sinh Mới đầu em sợ thấy giải toán đơn giản vòng vài giây nhẩm kết Còn lậptrình toán mà phải làm đến hàng chục phút mà lại cho kết sai Nhận thấy vai trò môn tinhọc nói chung lậptrình nói riêng học sinh THCS khó khăn việc dạyhọclậptrình nên chọn đề tài : “MỘTSỐVẤNĐỀGÓPPHẦNNÂNGCAOCHẤTLƯỢNGDẠYLẬPTRÌNHTRONGCHƯƠNGTRÌNHTINHỌC”để bàn luận nghiên cứu II MỤC ĐÍCH VÀ PHƯƠNG PHÁP NGHIÊN CỨU Tìm phương pháp, bước giải toán lậptrình máy vi tính trình giảng dạy môn Tinhọc bậc THCS phù hợp với học sinh Trên sở nghiên cứu tính tích cực học sinh họcTinhọc 8, xin đề xuất số ý kiến nhằm nângcaochấtlượngdạyhọclậptrình III GIỚI HẠN ĐỀ TÀI Khối trường THCS Hải Tân – Hải Lăng – Quảng trị IV CÁC GIẢ THUYẾT NGHIÊN CỨU V CƠ SỞ LÝ LUẬN , CƠ SỞ THỰC TIỂN: - Qua hai năm giảng dạytinhọc khối 8, nhận thấy kĩ lậptrình máy tính em yếu - Khi giải lậptrình toán máy học sinh quan tâm đến công thức để tính toán kết toán mà quên bước xác định thông tin vào, thông tin xây dựng thuật toán - Khi chạy chươngtrìnhhọc sinh chưa nhận biết kết chươngtrình hay sai - Học sinh sửa lỗi không phát lỗi thuật toán B PHẦN NỘI DUNG I THỰC TRẠNG VÀ NHỮNG MÂU THUẨN( thuận lợi – khó khăn) 1) Thực trạng: − Cơ sở vật chất nhà trường tương đối tốt, đảm bảo cho tiết thực hành lậptrình − Được quan tâm, giúp đỡ tận tình Ban Gíam Hiệu tổ chức đoàn thể nhà trường Sự ủng hộ nhiệt tình đồng nghiệp giúp cho trình nghiên cứu thuận lợi − Hầu hết học sinh cố gắng tiếp thu có ý thức đểhọc tập nguồn động viên lớn trình giảng dạy Giáo viên: Nguyễn Thị Oanh Trang Trường THCS Hải Tân 2) − − − Sáng kiến kinh nghiệm Những mâu thuẩn: Tư học sinh lớp thấp đểhọclậptrình Kiến thức toán học em chưa đủ để đáp ứng giải toàn lậptrình Ngôn ngữ lậptrình khô khan làm em có hứng thú II CÁC BIỆN PHÁP GIẢI QUYẾT VẤNĐỀ phương pháp tạo hứng thú , tích cực , chủ động cho học sinh : Cho học sinh thực luyện tập hoạt động hoạt động thành phần tương thích với nội dung mục tiêu dạy học: a) Phát hoạt động tương thích với nội dung Ví dụ: Dạy khái niệm chươngtrình con, phát hoạt động tương thích như: − Nhận dạng thể cách khai báo chươngtrình − So sánh hai loại chươngtrình con: Function Procedure − Hoạt động phân tích dùng Function, dùng Procedure − Hoạt động lật ngược vấnđềdạy truyền tham biến, tham trị − Hoạt động ngôn ngữ cho biết kết chươngtrình b) Phân tách hoạt động thành thành phần Ví dụ: Khi dạy câu lệnh: FOR biến_điều_khiển := giá_trị_đầu TO giá_trị_cuối DO câu_lệnh Giáo viên yêu cầu học sinh phân tách câu lệnh thành câu lệnh thành phần diễn theo trình tự sau: - B1: Kiểm tra điều kiện giá_trị_đầu > giá_trị_cuối kết thúc lệnh For - B2: Gán biến_điều_khiển := giá_trị_đầu - B3: Thực câu_lệnh - B4: Kiểm tra điều kiện thoát: biến_điều_khiển = giá_trị_cuối kết thúc lệnh For - B5: Tăng giá trị biến_điều_khiển lên Quay lên B3 Sau phân tách câu lệnh For học sinh nắm rõ trình thực câu lệnh => tránh nhiều sai sót viết chươngtrình Gợi động cho hoạt động học tập: a) Hướng tới tiện lợi, hợp lí hoá công việc Ví dụ: Khi tạo tình cho khởi tạo từ mảng trở lên yêu cầu thực phép toán cộng, trừ mảng giáo viên hướng dẫn học sinh xây dựng chươngtrìnhđể tính tổng hiệu ma trận cho tiện lợi hơn, không thời gian b) Chính xác hoá khái niệm Ví dụ: Khái niệm biến toàn cục, biến địa phương, tham biến, tham trị; dạy chưa thể làm rõ mối quan hệ chúng Tuy nhiên, ứng dụng chươngtrìnhđể giải tập mảng ta có điều kiện làm việc c) Hướng tới hoàn chỉnh hệ thống Ví dụ: Giáo viên giới thiệu sơ đồ tất kiểu liệu Pascal trước định nghĩa khái niệm kiểu liệu chuẩn Giáo viên: Nguyễn Thị Oanh Trang Trường THCS Hải Tân Sáng kiến kinh nghiệm d) Lật ngược vấn đề: Sau giải vấn đề, câu hỏi tự nhiên thường đặt vầnđề ngược lại giải Ví dụ: - Nhập số a,b,c kiểm tra xem số độ dài cạnh tam giác hay không Từ ta chuyển sang dạng cạnh thoã mãn tam giác cân, tính diện tích tam giác e) Qui lạ quen Ví dụ: Khi dạy tính tổng S = + + + …+ n giáo viên cho học sinh tương tự giải tập viết chươngtrình tính tổng S = 12 + 22 + 32 +… + n2 Các bước giúp em tiếp cận lậptrình hiệu quả: Đưa phương pháp tổng quát để giải toán máy vi tính dựa ngôn ngữ pascal Gồm bước: Xác định toán Xây dựng thuật toán Viết chươngtrình Chạy thử, kiểm tra, sửa đổi chươngtrìnhPhân tích, giảng dạy xâu phần Đặc biệt giáo viên cần ý phần sau : 2.1 viết chươngtrình : sử dụng phương pháp sau để giúp học sinh * Phương pháp tinh chế bước Một chươngtrình bắt đầu viết lời tự nhiên (tiếng Việt) thể phân tích tổng thể người lậptrình thể Ở bước sau câu lệnh phân tích chi tiết hơn, lời khác tương ứng với phân tích công việc thành việc nhỏ chi tiết dễ hiểu xác Song ngôn ngữ lậptrình pascal người lậptrình đưa phương pháp tinh chỉnh bước thể tư giải vấnđề toán từ xuống bước hướng ngôn ngữ lậptrình cho toán đưa phương pháp lậptrình tối ưu, sáng sủa * Ví dụ : Tìm tất số nguyên tố số nguyên N nhập vào từ bàn phím Tinh chế lần (sử dụng ngôn ngữ tựa tư nhiên) - Lấy tập NT= [ ] (để chứa số nguyên tố tìm được) S = [2, N] (tập số cần xét ) - Tìm số S đưa vào NT - Loại bỏ khỏi S bội sốsố nguyên tố vừa tìm - Số lại S số nguyên tố Tiếp tục trình S=[] - Xuất NT Tinh chế lần Bắt đầu NT: = [ ] S = [2, N] Repeat Giáo viên: Nguyễn Thị Oanh Trang Trường THCS Hải Tân Sáng kiến kinh nghiệm Tìm số S NT:= NT+ [S0] Loại khỏi S bội số S0 Until S=[ ]; Xuất NT; Kết thúc; Tinh chế lấn ( chươngtrình hoàn chỉnh) Program nguyen_to; Const N=100; Type nguyen=1 N; var NT, S:set of nguyen; S0,I:integer; begin NT:=[]; S:=[2 N];S0:=2; repeat while not (S0 in S) S0:=S0+1; NT:=NT+[S0];I:=S0; While I