Mục tiêu nghiên cứu của đề tài nhằm giúp các em có những phương pháp tốt nhất nhằm giải quyết những bài toán cơ bản là một nhiệm vụ quan trọng, yêu cầu giáo viên phải tìm tòi những giải pháp phù hợp để nâng cao chất lượng giờ dạy Tin học nói chung và Tin học lớp 8 nói riêng.
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 I Phần mở đầu: Lý do chọn đề tài Tin học cấp THCS là mơn học tự chọn với thời lượng 2 tiết/tuần từ lớp 6 đến lớp 9. Là mơn học mới đưa vào trường phổ thơng và có những đặc thù riêng như liên quan chặt chẽ với sử dụng máy tính. Đặc trưng của mơn Tin học là kiến thức đi đơi với thực hành, đặc biệt phần thực hành cịn chiếm thời lượng nhiều hơn phần lí thuyết. Mơn học này giúp học sinh bước đầu làm quen với phương pháp giải quyết vấn đề theo quy trình cơng nghệ và kỹ năng sử dụng máy tính phục vụ học tập và cuộc sống. Tin học có ý nghĩa to lớn đối với sự phát triển trí tuệ, tư duy thuật tốn, góp phần hình thành học vấn phổ thơng cho học sinh Qua thực tế trong ba năm giảng dạy mơn Tin hoc 8 ̣ trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk, bản thân tơi nhận thấy rằng nhiều học sinh cịn yếu về khả năng tiếp nhận kiến thức về mặt thuật tốn. Thậm chí cịn có một số học sinh khơng thích lập trình mà chỉ thực hiện gõ các bài tập chứ khơng tìm hiểu thuật tốn. Do vậy kiên th ́ ưc, ky năng l ́ ̉ ập trình cơ bản cua hoc sinh cịn y ̉ ̣ ếu Trong q trình giảng dạy bản thân ln suy nghĩ làm thế nào để các em tiếp cận một cách tốt nhất, dễ hiểu nhất các thuật tốn, áp dụng những cấu trúc lệnh có sẵn để vận dụng giải quyết các bài tốn cơ bản. Chính vì thế tơi ln chú trọng đến việc phân tích các dạng bài tốn theo các cấu trúc câu lệnh để học sinh đều có thể tự mình tìm ra các thuật tốn viết thành những chương trình thực hành trên máy Vơi nh ́ ưng suy nghi, băn khoăn trăn tr ̃ ̃ ở đo, ban thân tôi đa manh dan l ́ ̉ ̃ ̣ ̣ ựa chon đê tai: ̣ ̀ ̀ “Môt sô giai phap đê nâng cao ch ̣ ́ ̉ ́ ̉ ất lượng dạy học lập trình Pascal đối với mơn Tin học 8” để có thể giup cac em bi ́ ́ ến những bài tốn đơn giản thành những chương trình chạy được trong máy tính. Hình thành trong các em ước mơ trở thành những lập trình viên giỏi để phục vụ cho xã hội sau này. Mục tiêu, nhiệm vụ của đề tài Dạy học lập trình Pascal môn tin học phải tìm phương pháp, các bước giải bài tốn bằng cách lập trình trên máy vi tính Để giúp các em có những phương pháp tốt nhất nhằm giải quyết những bài tốn cơ bản là một nhiệm vụ quan trọng, u cầu giáo viên phải tìm tịi GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 những giải pháp phù hợp để nâng cao chất lượng giờ dạy Tin học nói chung và Tin học lớp 8 nói riêng đó là: Hình thành được cách hướng dẫn cho học sinh tiếp thu các kiến thức cơ bản về ngơn ngữ lập trình một cách thuận lợi nhất và dễ hiểu nhất Hướng dẫn cho học sinh cách giải quyết các bài tốn khi áp dụng các cấu trúc lệnh trong ngơn ngữ lập trình Pascal Đối tượng nghiên cứu Nghiên cứu một số giải pháp để nâng cao chất lượng dạyhọc trong ngơn ngữ lập trình Pascal Giới hạn của đề tài Phạm vi áp dụng trong cac tiêt h ́ ́ ọc về lập trình Pascal mơn Tin hoc 8 ̣ Trường THCS đơn vị tơi đang cơng tác năm học 2016 2017. Thời gian thực hiện dự án: Trong 6 tháng Phương pháp nghiên cứu a) Nhóm phương pháp nghiên cứu lý luận Phương pháp phân tích tổng hợp tài liệu + Tham khảo sách giáo khoa Tin học lớp 6 + Tham khảo hướng dẫn Tin học lớp 6 dành cho giáo viên + Tham khảo các tài liệu trên mạng internet Phương pháp khái qt hóa các nhận định độc lập b) Nhom ph ́ ương pháp nghiên cứu thực tiễn Phương pháp điều tra Phương pháp tổng kết kinh nghiệm giáo dục. + Tham khảo những kinh nghiệm của đồng nghiệp đi trước + Tham khảo kinh nghiệm của các trường bạn Phương pháp nghiên cứu các sản phẩm hoạt động Phương pháp lấy ý kiến chuyên gia Phương pháp khảo nghiệm, thử nghiệm + Thử áp dụng các giải pháp vào quá trình giảng dạy Tin học ở lớp 8a4, 8a5 trường THCS Lương Thế Vinh II Phần nội dung GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 Cơ sở lý luận: Theo Nghị quyết số 29NQ/TW Hội nghị Trung ương 8 khóa XI về đổi mới căn bản, tồn diện giáo dục và đào tạo và Nghị quyết số 44/NQCP ban hành Chương trình hành động của Chính phủ thực hiện Nghị quyết số 29/NQ TƯ ngày 04 tháng 11 năm 2013 Hội nghị lần thứ tám Ban Chấp hành Trung ương khóa XI: Đẩy mạnh ứng dụng cơng nghệ thơng tin và truyền thơng trong dạy và học Phát huy vai trị của cơng nghệ thơng tin và các thành tựu khoa học cơng nghệ hiện đại trong quản lý nhà nước về giáo dục, đào tạo Từng bước hiện đại hóa cơ sở vật chất kỹ thuật, đặc biệt là hạ tầng cơng nghệ thơng tin Ngơn ngữ lập trình Pascal chính là sử dụng ngơn ngữ lập trình để giải quyết các bài tốn. Chính vì vậy kiến thức về tốn học là hết sức quan trọng, muốn lập trình được thì u cầu học sinh phải nắm kiến thức về Tốn học khi đó mới có thể tiến hành tìm ra hướng đi cho từng bài tốn cụ thể. Đây là một vấn đề vơ cùng khó khăn đối với các học sinh yếu và kém về mơn Tốn khi tiếp cận với lập trình Pascal Thực trạng vấn đề nghiên cứu Qua q trình giảng dạy tơi nhận thấy rằng đa số học sinh gặp khó khăn nhiều khi học các tiết học về chương trình và viết chương trình bằng ngơn ngữ lập trình Pascal. Nhiều em khơng hiểu ý nghĩa của các câu lệnh, q trình giải một bài tốn và khơng tìm ra được thuật tốn nên các em học theo kiểu máy móc, học thuộc khơng hiểu về quy trình lập trình Vẫn cịn những học sinh học tập một cách thụ động, chỉ chờ thầy, cơ đọc cho chép, hoặc trả bài một cách đối phó hay lười suy nghĩ… Một phần cũng do giáo viên hay sử dụng các phương pháp dạy học cũ là đọc chép, lý thuyết nhiều mà ít thực hành. Đa số các em rất khó giải quyết các bài tốn, đặc biệt là khơng biết áp dụng các câu lệnh vào từng bài tốn cụ thể. Nhiều em kỷ năng phân tích bài tốn cịn rất yếu Là mơn học sử dụng ngơn ngữ lập trình Pascal (ngơn ngữ viết bằng Tiếng Anh) nên các em có nhiều bỡ ngỡ vì đây là lần đầu tiên các em biết đến khái niệm lập trình và hiểu nghĩa các từ khóa bằng Tiếng Anh. Mặt khác là GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 mơn học vận dụng kiến thức về Tốn học rất khó cho các em trong q trình lập trình Theo tơi, kiến thức khơng bao giờ là cơ lập, khơng đứng độc lập mà nó có mối liên hệ chặt chẽ với nhau. Nếu chúng ta khơng học hỏi, trau dồi kiến thức ở những mơn học khác thì cũng giống như “con chuột chui vào sừng trâu; càng chui sâu càng hẹp” mà thơi. Những hạn chế mà đề tài đưa ra cũng sẽ được khắc phục nếu như cả giáo viên và học sinh đều khơng ngừng học hỏi, trau dồi kiến thức những mơn học khác có liên quan thì sẽ thu lại kết quả khả quan Nội dung và hình thức của giải pháp: a Mục tiêu của giải pháp Thực hiện đề tài này, tơi mong muốn có thể nâng cao được chất lượng học tập ở mơn Tin học của học sinh. Đồng thời tơi cũng muốn đưa ra một vài kinh nghiệm của mình để có thể giúp đồng nghiệp trong q trình giảng dạy b Nội dung và cách thức thực hiện giải pháp Từ thực trang trên tơi xin đ ̣ ưa ra một số giai pháp nhăm nâng cao chât ̉ ̀ ́ lượng dạy học lập trình Pascal đối với mơn Tin hoc 8: Đối với giáo viên: Cần phải nắm vững các phương pháp dạy học Tin học nhằm phát huy tính tích cực, chủ động của học sinh trong học tập. Để nâng cao chất lượng dạy học mơn Tin học, giáo viên phải tiếp cận nội dung bài và lựa chọn các phương pháp, xây dựng hệ thống câu hỏi logic, phù hợp với ba đối tượng: giỏi, trung bình, yếu. Từ đó dẫn dắt học sinh tự khám phá kiến thức, khơng thụ động ghi nhận kiến thức mà giáo viên cung cấp, phải có sự phối hợp giữa hoạt động dạy và hoạt động học trên cơ sở lấy học sinh làm trung tâm Để tạo hứng thú học tập và hoạt động tích cực chủ động của học sinh, giáo viên phải phối hợp nhuần nhuyễn các phương pháp dạy học. Giáo viên phải tích hợp các mơn học khác nhau trong mỗi tiết dạy Tùy theo từng dạng bài mà giáo viên sử dụng phương pháp dạy học và lập kế hoạch, chuẩn bị nội dung dạy học cho phù hợp. Sau đây là một số giải pháp: Tìm hiểu các từ khóa GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 Trong mỗi bài học việc tìm hiểu nghĩa các từ khóa rất quan trọng, phải làm cho các em hiểu được ý nghĩa của các từ khóa trước khi u cầu các em vận dụng nó vào cơng việc viết chương trình hay cấu trúc lệnh. Vì mỗi cấu trúc lệnh của Pascal đều có nghĩa của nó. Nếu cơng việc này nếu chúng ta cho học sinh hiểu được thì xem như chúng ta đã đạt được 30% mục tiêu bài học Ví dụ: Write nghĩa là viết, ở đây chúng ta có thể nói rõ cho học sinh biết viết ra màn hình Read nghĩa là đọc, đây ta có thể hiểu là đọc (nạp) dữ liệu vào cho máy tính If then else : có nghĩa là Nếu thì ngược lại While do : Trong khi thì làm việc Begin end.: Bắt đầu kết thúc Cho học sinh thực hiện và luyện tập những hoạt động tương tự với nội dung và mục tiêu dạy học: + Dạy lý thuyết Phát hiện những hoạt động tương tự với nội dung Ví dụ: Cách đặt tên chương trình, biến trong Pascal với đặt tên tệp Cấu trúc lệnh rẽ nhánh với các hoạt động có điều kiện trong thực tế Cấu trúc lệnh lặp với những hoạt động lặp lại hàng ngày Các thao tác tìm phần tử, max, min trên dãy số với các hoạt động tìm người nặng nhất, cao nhất trong lớp Thao tác hốn đổi hai giá trị với hoạt động hốn đổi hai ly nước đường, muối Phân tách hoạt động thành những thành phần * Bài 2 . Làm quen với chương trình và ngơn ngữ lập trình Để dạy bài này và giúp học sinh hiểu được chương trình và ngơn ngữ lập trình thì giáo viên phải giúp học sinh tìm hiểu các hoạt động sau: Hoạt động 1: Các thành phần của ngơn ngữ lập trình Đối với phần này giáo viên cần nêu rõ các thành phần cơ bản tạo nên ngơn ngữ lập trình đó là: GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 + Các từ để viết thành lệnh trong chương trình; VD: Program, var, Begin end, Writeln… + Các ký hiệu được viết theo quy tắc: Quy định về viết các từ và thứ tự của nó. VD: Từ nào viết trước, từ nào viết sau, các từ được ngăn cách nhau bởi dấu cách hoặc nhiều dấu cách, cuối một số lệnh phải có dấu “;”… VD: Khai báo tên chương trình phải dùng từ khóa: Program; bắt đầu chương trình dùng từ khóa Begin và kết thúc chương trình phải là từ khóa end…. Nếu viết sai quy tắc máy sẽ báo lỗi Trong phần này giáo viên cần nhấn mạnh các quy tắc khi viết lệnh cho chương trình Hoạt động 2: Cấu trúc chung của chương trình Để viết được chương trình thì bắt buộc học sinh phải nắm được cấu trúc chung của một chương trình. Giáo viên phải nêu rõ 2 phần của chương trình: + Phần khai báo thường gồm các câu lệnh dùng để khai báo tên chương trình (Program); khai báo hàm thư viện (uses crt); khai báo biến (var); khai báo hằng (Const)…Phần khai báo có thể có hoặc khơng. Giáo viên nhấn mạnh cho học sinh hiểu hơn: Nếu có phần khai báo thì nó phải được đặt trước phần thân chương trình + Phân thân của chương trình gồm các câu lệnh mà máy tính cần thực hiện (Đây là phần bắt buộc phải có): Bằng từ khóa Begin…End. Từ khóa Begin để cho biết điểm bắt đầu và từ khóa end để cho biết điểm kết thúc của một chương trình. Giáo viên đưa ra một ví dụ và cho học sinh tự nhận biết các phần của cấu trúc chung của chương trình Ví dụ: Program toilapascal; Phần khai báo Uses crt; Begin Writeln(‘Rat vui vi ban den vơi pascal’); Phần thân End. * Bài 3. Chương trình máy tính và dữ liệu GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 Để giúp học sinh hiểu về một chương trình máy tính và các kiểu dữ liệu sử dụng trong chương trình thì giáo viên phải u cầu học sinh tìm hiểu các hoạt động sau: Hoạt động 1: Các kiểu dữ liệu thường dùng Hoạt động này cần giúp học sinh biết được để máy tính hiểu được thơng tin đưa vào, xử lý thơng tin, thơng tin đưa ra trong ngơn ngữ lập trình thì phải cần đến các kiểu dữ liệu được định nghĩa sẵn: + Kiểu số ngun: Integer + Kiểu số thực: Real + Kiểu ký tự: Char + Kiểu xâu ký tự: String +……… Trong hoạt động này giáo viên cần làm rõ: Tùy thuộc vào u cầu của từng bài tốn để chúng ta khai báo dữ liệu của bài tốn đó thuộc kiểu dữ liệu nào? Ví dụ : + Đối với bài tốn nhập xuất họ và tên học sinh thì biến hoten phải khai báo kiểu dữ liệu string + Đối với bài tốn “Kiểm tra N là số chẵn hay lẻ ” thì biến N phải khai báo kiểu Integer; Khi khai báo kiểu dữ liệu thì giáo viên cần nhắc học sinh chú ý đến phạm vi sử dụng của các kiểu dữ liệu. Khai báo đúng kiểu dữ liệu có nghĩa là phần nào các em đã biết nắm bắt được u cầu của bài lập trình Hoạt động 2: Lệnh nhập xuất của chương trình Đối với hoạt động này giáo viên cần làm rõ cho học sinh hiểu được q trình trao đổi dữ liệu giữa con người và máy tính thì phải cần đến lệnh nhập xuất dữ liệu + Lệnh nhập: Là lệnh đưa dữ liệu vào cho chương trình được thực hiện: Readln(giá trị dữ liệu cần nhập); VD: Nhập vào một số ngun N từ bàn phím. Viết chương trình kiểm tra xem N là số chẵn hay số lẽ? GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 Đối với bài tốn này thì u cầu phải nhập số ngun N bằng lệnh: Readln(N); + Lệnh xuất: Là lệnh đưa kết hình thực hiện: Writeln(giá trị cần xuất); VD: Muốn đưa kết quả S ra màn hình: Writeln(S); Trong hoạt động này giáo viên cần nhấn mạnh vai trị của việc nhập xuất dữ liệu khi viết chương trình * Bài 4. Sử dụng biến trong chương trình Để dạy bài này và giúp học sinh hiểu được cơng cụ biến trong chương trình, biết cách sử dụng áp dụng biến vào từng bài tốn cụ thể thì giáo viên phải giúp học sinh tìm hiểu qua các hoạt động sau: Hoạt động 1: Tìm hiểu về cơng cụ biến trong chương trình Ở hoạt động này giáo viên phải nói rõ cho học sinh hiểu để lưu trữ dữ liệu và xử lý dữ liệu trong chương trình thì cần đến một cơng cụ lập trình đó là biến. Biến dùng để lưu trữ dữ liệu và khi nào cần xử lý dữ liệu thì chỉ cần tìm đến vị trí của biến cần lưu Ví dụ: Để tính tổng của a+b với giá trị a, b được nhập từ bàn phím Do khơng biết giá trị a,b được nhập vào là bao nhiêu nên phải sử dụng hai biến a, b để lưu giá trị cần nhập vào trong vùng nhớ. Muốn thực hiện tính tổng ta sử dụng lệnh: Writeln(a+b) khi đó chương trình sẽ tự tìm đến vị trí các biến để thực hiện phép tốn a+b Giáo viên cần nhấn mạnh cho học sinh hiểu giá trị của biến có thể thay đổi trong q trình thực hiện chương trình Hoạt động 2: Cách sử dụng biến trong chương trình. Đối với hoạt động này giáo viên phải giúp học sinh biết được cách sử dụng các biến trong chương trình. + Thực hiện tính tốn giá trị cho biến; + Gán giá trị cho biến bằng lệnh: Tên biến:= Biểu thức cần gán giá trị cho biến Giáo viên đưa ra ví dụ để học sinh nắm bắt cách gán giá trị cho biến: GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krơng Ana – ĐắkLắk Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với mơn Tin học 8 Ví dụ: i:=1 > Gán giá trị 1 cho biến nhớ i; Giáo viên phải đưa ra chú ý cho học sinh hiểu tránh trường hợp học sinh gán giá trị tùy tiện đó là: Kiểu dữ liệu của biểu thức cần gán giá trị cho biến phải trùng với kiểu dữ liệu của biến, khi gán giá trị mới thì giá trị cũ bị mất đi Ví dụ: x là biến được khai báo kiểu dữ liệu số ngun Vậy x= a/b là sai bởi vì biểu thức a/b có kiểu dữ liệu phải là số thực * Bài 5. Từ bài tốn đến chương trình Đây là bài học rất quan trọng trong chương trình lập trình Pascal bởi vì bài học này sẽ giúp các em tìm ra đựơc con đường lập trình từ một bài tốn cụ thể đến với chưong trình máy tính. Để học sinh hiểu được nội dung bài học này có nghĩa là giáo viên đã thành cơng một nửa trong q trình giúp các em giải tốn bằng ngơn ngữ lập trình. Để giải quyết một bài tốn thì việc học sinh xác định được bài tốn là bước vơ cùng quan trọng, đó chính là bước đầu học sinh biết được bài tốn cho gì và cần làm cơng việc gì? Hoạt động 1: Q trình giải bài tốn trên máy tính Đối với hoạt động này thì giáo viên phải hình thành cho học sinh biết q trình từ một bài tốn cụ thể để viết thành chương trình gồm những bước đó là: + Xác định bài tốn + Mơ tả thuật tốn + Viết chương trình Ví dụ: Tìm số lớn nhất trong 4 số a,b,c,d. In ra màn hình số lớn nhất? Ta cần xác định cho bài tốn: + Thơng tin vào: Bốn số a,b,c,d + Thơng tin ra: Số lớn nhất Max + Mơ tả thuật tốn: * Giả sử số lớn nhất là a: Max:=a; * So sánh Max với số b. Nếu Max