Đề tài sáng kiến kinh nghiệm: nâng cao hiệu quả dạy học môn tin học 11 trung học phổ thông. Những khó khăn gặp phải và giải pháp đặt ra để giải quyết vấn đề trong chương trình tin học. Giúp các thầy cô giáo tham khảo và đóng góp thêm một phần vào chương trình dạy học nhằm nâng cao chất lượng dạy học bộ môn.
A PHẦN MỞ ĐẦU Lý chọn đề tài - Sự phát triển mạnh mẽ vũ bão tin học làm cho xã hội có nhiều nhận thức cách tổ chức hoạt động Nhiều quốc gia giới ý thức rõ tầm quan trọng tin học có đầu tư lớn cho lĩnh vực này, đặc biệt giáo dục nâng cao dân trí tin học đào tạo nguồn nhân lực có chất lượng cao Người Việt Nam có nhiều tố chất thích hợp với ngành khoa học này, hi vọng sớm hoà nhập với khu vực giới - Trong thời đại thông tin bùng nổ ngày nay, việc lập chương trình tự hoạt động cho máy tính, máy gia dụng cần thiết Và để làm việc cần có q trình nghiên cứu, học tập ngơn ngữ lập trình lâu dài, qua nhà lập trình chọn ngơn ngữ lập trình thích hợp - Tin học môn học trường phổ thông nên học sinh nhiều bỡ ngỡ tiếp cận với mơn học Nội dung tin học lập trình lớp 11 nội dung lạ đa số học sinh với nhiều khái niệm, thuật ngữ, cấu trúc liệu mà học sinh tiếp xúc lần đầu Chính mà học sinh dễ mắc sai lầm lập trình giải tốn Ngun nhân dẫn đến khó khăn mà học sinh thường gặp phong phú thấy số nguyên nhân sau đây: + Học sinh thường gặp khó khăn xác định tốn + Khó liên hệ phương pháp giải toán toán học với thuật giải tin học - Tuy nhiên thứ điều có điểm khởi đầu nó, với học sinh việc học ngơn ngữ lập trình Turbo Pascal khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua giúp em hình dung đời, cấu tạo, hoạt đông ích lợi chương trình hoạt động máy tính, máy tự động… Qua giúp em có thêm định hướng, niềm đam mê tin học, nghề nghiệp mà em chọn sau Xuất phát từ sở trên, chọn đề tài “Một số khó khăn giải pháp dạy lập trình mơn tin học lớp 11” Mục đích nghiên cứu - Do gặp phải khó khăn hiểu viết chương trình nên lập trình giải toán học sinh thường mắc nhiều lỗi, chí có lỗi em mắc phải nhiều lần không hiểu nguyên nhân xuất lỗi Vì nội dung đề tài tơi nêu số lỗi phổ biến em thường mắc phải cách sửa lỗi - Tuy vậy, đối tượng học sinh giỏi, đa phần em hào hứng với việc học lập trình, cụ thể ngơn ngữ lập trình Turbo Pascal Do đề tài tơi trình bày thêm số lưu ý kinh nghiệm dạy lập trình Pascal đề giúp học sinh hiểu cách nhanh chóng, nắm kiến thức kĩ lập trình Pascal số ví dụ mở rộng, nâng cao với đối tượng học sinh Thời gian địa điểm 3.1 Thời gian nghiên cứu - Đề tài tiến hành năm học 2015 – 2016 3.2 Địa điểm nghiên cứu - Địa điểm tiến hành nghiên cứu Trường THCS & THPT Đường Hoa Cương Đóng góp mặt thực tiễn Các ý dạy ngơn ngữ lập trình nói chung, ngơn ngữ lập trình Turbo Pascal nói riêng nhiều, rât phong phú Tuy nhiên phạm vi sáng kiến kinh nghiệm tơi trình bày số lưu ý, kinh nghiệm cá nhân qua nội dung cụ thể sau: - Một số lỗi sai phổ biến học sinh học lập trình Pascal - Một số kinh nghiệm dạy lập trình nói chung Turbo Pascal nói riêng - Một số tập làm thêm với đối tượng học sinh khá, giỏi Đề tài thực phạm vi chương trình tin học khối 11 nhằm truyền đạt, nâng cao kiến thức môn tin học cho học sinh Đặc biệt trọng vào biện pháp nâng cao hứng thú cho học sinh nâng cao chất lượng môn tin học nhà trường B PHẦN NỘI DUNG CHƯƠNG I TỔNG QUAN Cơ sở lý luận - Đả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- BGTĐ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 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 Với số nội dung đề tài này, học sinh tự học, tự rèn luyện thông qua số tập, dạng tập cụ thể Cơ sở thực tiễn - Qua thực tế giảng dạy trường THCS&THPT Đường Hoa Cương năm qua, nhận thấy học đến chương trình tin học lớp 11 đa số học sinh nhận xét mơn khó - Các học sinh thường gặp nhiều lỗi viết chương trình ngơn ngữ lập trình Pascal - Tuy nhiên có số lượng khơng nhỏ học sinh u thích tin học thích tìm hiểu số tốn, dạng tốn ngồi phạm vi sách giáo khoa Vấn đề đưa Tin học thành môn học yêu thích em học sinh trở thành vấn đề quan trọng, cần phải có đầu tư thích đáng ngành giáo dục, nhà trường mà quan trọng phương pháp giảng dạy giáo viên trực tiếp tham gia giảng dạy môn CHƯƠNG II NỘI DUNG VẤN ĐỀ NGHIÊN CỨU Thực trạng Một số lỗi sai thường gặp học sinh lập trình Pascal: 1)Khai báo sai miền số cho liệu kiểu mảng Ví dụ 1: Nhập vào mảng số nguyên gồm số lớn nhỏ 100 In mảng vừa nhập Học sinh khai báo mảng sau: Var a: array[3 100] of integer; 2)Giá trị biến điều khiển vượt miền số mảng Ví dụ 2: Nhập vào dãy số gồm phần tử cho biết dãy vừa nhập có tạo thành cấp số cộng khơng? Học sinh lập trình giải tốn sau: Var a: array[1 7] of integer; i,d:integer;kt:boolean; Begin Write(‘nhap day so:’); For i:=1 to Begin Write(‘a[’ ,i, ‘]’); Readln(a[i]); End; d:=a[2]-a[1];kt:=true;i:=1; while (kt) and (i=,>,1 Chọn hộp đặt lên bàn cân Giữ lại hộp nặng cất hộp nhẹ chỗ khác Nếu khơng hộp chưa cân chuyển sangbước 5, ngồi ra: Chọn hộp để lên dĩa cân trống Giữ lại hộp nặng hơn, cất hộp nhẹ sang chỗ khác Trở lại bước Hộp lại cân hộp nặng kết thúc 1.2 Bài tập đọc hiểu chương trình: Loại tập giúp phát triển tư duy, giúp học sinh hiểu bài, dạy cấu trúc lệnh Đối với dạng tập này, giáo viên nên hướng dẫn em thực lệnh theo câu lệnh cụ thể Ví dụ: Cho biết kết thực chương trình sau: Program vd2; Uses crt; Var i:integer; Begin Clrscr; I:=7; While i>1 Begin If (i mod 2)0 then i:=i*3+1 Else i:=i div 2; Writeln(i); End; Readln; End 1.3 Bài tập sửa lỗi chương trình: Ví dụ 3: Để tìm số lớn số a,b,c nhập vào từ bàn phím, có người viết chương trình sau: Program vd3; Uses crt; Var a,b,c:integer; Begin Clrscr; Write(‘nhap vao so:’); Readln(a,b,c); If a