Báo cáo Một số biện pháp giúp học sinh Lớp 8 tránh một số lỗi cần lưu ý khi học lập trình Pascal - Trường THCS Trần Đại Nghĩa

pptx 23 trang Hải Phong 14/07/2023 2980
Bạn đang xem 20 trang mẫu của tài liệu "Báo cáo Một số biện pháp giúp học sinh Lớp 8 tránh một số lỗi cần lưu ý khi học lập trình Pascal - Trường THCS Trần Đại Nghĩa", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptxbao_cao_mot_so_bien_phap_giup_hoc_sinh_lop_8_tranh_mot_so_lo.pptx

Nội dung text: Báo cáo Một số biện pháp giúp học sinh Lớp 8 tránh một số lỗi cần lưu ý khi học lập trình Pascal - Trường THCS Trần Đại Nghĩa

  1. 7/18/2023 7:11:59 PM 1
  2. MỘT SỐ BIỆN PHÁP GIÚP HỌC SINH LỚP 8 TRÁNH MỘT SỐ LỖI CẦN LƯU Ý KHI HỌC LẬP TRÌNH PASCAL.
  3. I. Lý do chọn biện pháp Trong thời buổi công nghệ hiện đại như ngày nay, nền công nghiệp 4.0 được xem là ngành công nghiệp chủ lực để ứng dụng vào việc phát triển kinh tế của một quốc gia. Việc lập được các chương trình chạy trên máy tính, các thiết bị điện tử thông minh, tạo ra các trò chơi học vui - vui học là điều rất cần thiết. Và để làm được việc đó cần có một quá trình nghiên cứu, học tập về ngôn ngữ lập trình lâu dài, qua đó nhà lập trình có thể chọn một ngôn ngữ lập trình thích hợp để viết chương trình. Để đáp ứng cho nền kinh tế phát triển theo hướng công nghiệp 4.0 thì người lao động và làm việc hiện nay cần phải biết sử dụng từ mức độ biết đến thành thạo những trang thiết bị ở lĩnh vực công nghệ là điều cần thiết với mọi người, trong đó lĩnh vực giáo dục nói chung và phân môn Tin học nói riêng ở nhà trường đóng vai trò khá quan trọng đối với học sinh.
  4. I. Lý do chọn biện pháp Trong lĩnh vực giáo dục, tin học là một môn học tự chọn ở các trường phổ thông hiện nay và là môn chính khóa với mô hình trường học mới nên học sinh còn nhiều bỡ ngỡ, chưa nhận thấy tầm quan trọng của môn học này. Với thực tế đó ở góc độ giáo dục việc đào tạo, hướng dẫn cho thế hệ trẻ học sinh hiện đại nhất là việc học lập trình đối với học sinh được xem là một học phần khó và trừu tượng. Nội dung tin học lập trình lớp 8 là một nội dung mới lạ đối với đa số học sinh với nhiều khái niệm, thuật ngữ, cấu trúc dữ liệu mà học sinh mới được tiếp xúc lần đầu. Chính vì vậy mà học sinh dễ mắc sai lầm khi lập trình giải quyết các bài toán. Nguyên nhân dẫn đến những khó khăn mà học sinh thường gặp là rất phong phú nhưng có thể thấy một số nguyên nhân chính như: Học sinh thường gặp khó khăn khi xác định bài toán, học sinh khó liên hệ phương pháp giải một bài toán trong Toán học với thuật giải trong Tin học.
  5. I. Lý do chọn biện pháp Tuy nhiên mọi thứ điều có điểm khởi đầu của nó, với học sinh việc học ngôn ngữ lập trình Pascal là khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua đó giúp các em hình dung được sự ra đời, cấu tạo, hoạt động cũng như ích lợi của các chương trình hoạt động trong máy tính, các máy tự động, roobot, Qua đó giúp các em có thể thêm một định hướng, một niềm đam mê về Tin học, về nghề nghiệp mà các em chọn lựa sau này. Trong thời gian công tác tại trường THCS Trần Đại Nghĩa, tôi được phân công giảng dạy môn tin khối 8 và bồi dưỡng học sinh giỏi tin 8. Qua 4 năm giảng dạy tôi nhận thấy học sinh (HS) thường mắc phải những lỗi sai. Vì vậy, tôi luôn trăn trở, suy nghĩ tìm ra một giải pháp nào đó để giúp học sinh tôi khắc phục những lỗi sai này. Chính vì thế, tôi đã tham khảo ý kiến của nhiều giáo viên (GV) trong tổ, giáo viên chủ nhiệm và những đồng nghiệp khác từ đó tôi đã tự đúc kết ”Một số biện pháp giúp học sinh lớp 8 tránh một số lỗi cần lưu ý khi học lập trình Pascal” để hướng dẫn học sinh.
  6. II. Nội dung các biện pháp 1. Một số lỗi sai thường gặp của học sinh trong lập trình Pascal. 1.1. Sử dụng sai vị trí hoặc thiếu dấu “;” Dấu chấm phẩy (;) được dùng để phân cách các lệnh trong Pascal. Nên sau mỗi câu lệnh phải viết dấu chấm phẩy. Trước Else không có dấu chấm phẩy, sử dụng dấu chấm phẩy sau từ khóa do trong các câu lệnh lặp dạng đủ→ câu lệnh lặp rỗng không làm việc gì cả. VD: If b<>0 then x:=a/b; else write(‘Mau so bang 0, khong chia duoc’);
  7. 1. Một số lỗi sai thường gặp của học sinh trong lập trình Pascal. 1.2 Không phân biệt được hằng xâu và biến Học sinh cần phải chú ý hằng xâu đặt trong cặp dấu nháy đơn để nội dung được in ra màn hình còn biến thì không cần đặt trong cặp nháy đơn. VD: Write(‘dien tich hinh chu nhat S=‘, S); 1.3. Đặt tên biến sai quy tắc. - Tên biến bị trùng với từ khóa; - Tên biến bị trùng nhau trong cùng một chương trình; - Tên biến bị chứa dấu cách như viết văn bản hay bắt đầu bằng chữ số,
  8. 1. Một số lỗi sai thường gặp của học sinh trong lập trình Pascal. 1.4. Khai báo sai miền chỉ số cho dữ liệu kiểu mảng Ví dụ: Nhập vào một mảng số nguyên gồm các số lớn hơn 3 và nhỏ hơn 100. In mảng vừa nhập. Học sinh khai báo mảng như sau: Var a:array [3 100] of integer; 1.5. Chưa hiểu thứ tự ưu tiên phép toán Thứ tự ưu tiên các phép toán trong ngôn ngữ lập trình Pascal như sau: - Biểu thức trong ngoặc: *, /, div, mod +, -, or, and - Các phép so sánh: >=, >, .
  9. 1. Một số lỗi sai thường gặp của học sinh trong lập trình Pascal. 1.6. Tràn số do kết quả tính toán vượt quá giới hạn Function GT(n:integer); Var i,t:integer; Begin Khi thực hiện chương trình GT(8)= -25126 là sai T:=1; vì thực tế 8!=40320 For i:=2 to n do t:=t*i; Lỗi này do khai báo hàm trả về số nguyên vì miền Gt:=t; giá trị tối đa là 32767 End; Begin Write(‘GT(8)=’,GT(8)); Readln; End.
  10. 1. Một số lỗi sai thường gặp của học sinh trong lập trình Pascal. 1.7. Khai báo sai (không tương thích) kiểu dữ liệu Ví dụ: Chương trình tính chu vi và diện tích hình chữ nhật; Uses crt; Var a, b:real; S:=a*b; S,cv:integer; Cv:=(a+b)*2; Begin Writeln(‘dien tich la’, S); Clrscr; Writeln(‘chu vi la’, cv); Writeln(‘chieu dai a=’); readln(a); Readln; Writeln(‘chieu rong b=’); readln(b); End. Khi chạy chương trình nên chương trình sẽ báo lỗi type mismatch chỗ dòng công thức tính diện tích của biến a, b. Cách khắc phục ta sửa biến a, b, cv, s về cùng kiểu là được.
  11. 2. Phân loại nhiều dạng bài tập a. Bài tập về viết thuật toán Thuật toán là một dãy hữu hạn các thao tác cần thực hiện để giải một bài toán. Nói cách khác, trình bày thuật toán tức là chỉ ra các bước cần thực hiện để đi đến kết quả. Việc trình bày thuật toán trước khi viết chương trình là hết sức quan trọng. Thuật toán đúng thì chương trình mới có khả năng đúng, còn một thuật toán sai chắc chắn là do một chương trình sai. Tuy nhiên đối với phần lớn học sinh lớp 8 thường bỏ qua bước này do tâm lý học sinh không thích các loại bài tập như thế. Cần phải tạo cho các em có ý thức khi viết một chương trình Pascal là phải tuân thủ theo trình tự sau: Xác định bài toán → xây dựng thuật toán → Viết chương trình
  12. Ví dụ: Có n hộp có khối lượng khác nhau và một cái cân dĩa. Hãy chỉ ra cách cân để tìm được hộp nặng nhất. Với bài toán trong thực tế như trên ta có thể phát biểu lại dưới dạng bài toán trong toán học như sau: Cho tập hợp A có số phần tử hữu hạn. Tìm phần tử lớn nhất trong tập hợp A nói trên. Khi đó ta có thể trình bày thuật toán như sau: B1: Nếu chỉ có 1 hộp thì đó chính là hộp nặng nhất và kết thúc. B2: Nếu số hộp n > 1 thì chọn 2 hộp bất kì và đặt lên bàn cân. Giữ lại hộp nặng hơn và cất hộp nhẹ đi chỗ khác. B3: Chọn một hộp bất kì và để lên dĩa cân còn trống. Giữ lại hộp nặng hơn, cất hộp nhẹ sang chỗ khác Ngược lại, Nếu không còn hộp chưa được cân thì chuyển sang bước 5 B4: Trở lại bước 3 B5: Hộp còn lại trên cân là hộp nặng nhất và kết thúc.
  13. 2. Phân loại nhiều dạng bài tập b. Bài tập tìm kết quả dựa trên thuật toán có sẵn B1: SUM 0; I  0; B2: Nếu i >4 thì chuyển tới bước 4. B3: i i+1; SUM SUM+i; . Quay lại bước 2. B4: Thông báo giá trị SUM và kết thúc thuật toán. SUM i i>4 ii+1 SUMSUM+i 0 0 SAI i1 SUM1 SAI i2 SUM3 SAI i3 SUM6 SAI i4 SUM10 ĐÚNG
  14. c. Bài tập về đọc hiểu chương trình Loại bài tập này sẽ giúp phát triển tư duy, giúp học sinh hiểu bài, nhất là khi dạy có cấu trúc lệnh. Ví dụ: Cho biết kết quả khi thực hiện chương trình sau: Uses crt; Var i:integer; Begin Clrscr; I:=7; While i > 1 do Begin If (i mod 2) <>0 then i:=i*3+1 else i:=i div 2; Writeln(i); End; Readln; End.
  15. d. Bài tập về sửa lỗi chương trình Ví dụ: Hãy liệt kê các lỗi có thể có trong chương trình dưới đây và sửa lại cho đúng: Var a,b:=integer; Const c:=3; Begin a:=200 b:=a/c; write(b); readln End.
  16. 3. Trình bày thuật toán, viết chương trình theo đúng thuật toán đó Một bài toán có thể có nhiều cách giải khác nhau ứng với mỗi cách giải ta có một thuật toán. Để giúp học sinh có khả năng nhanh chóng nắm được ý tưởng của người khác cần luyện cho các em biết giải bài toán theo một thuật toán đã được trao đổi. Khả năng hiểu được nhanh ý tưởng của người khác cũng chính là yêu cầu trong hoạt động nhóm. Phát triển khả năng này là phát triển một phẩm chất tư duy quý báu để các em biết hợp tác trong công việc, một trong những yêu cầu của người lao động, sáng tạo trong thời đại mới, thời đại mà một sản phẩm là sự kết tinh lao động của nhiều người.
  17. Ví dụ: Viết chương trình tính tổng S=1+2+3+ +N. Chương trình có thể được viết như sau: Hãy viết chương trình theo thuật toán sau: Uses crt; Bước 1: S0; i0. Var i, N, S:integer; Bước 2: Nếu i>N thì chuyển tới bước 4. Begin Bước 3: ii+1; SS+i. Quay lại bước 2 Write(‘nhap N=’);readln(N); Bước 4: Thông báo giá trị S và kết thúc thuật toán. S:=0; i:=0; While i N thì chuyển tới bước 4. Write(‘tong S=’,S); Bước 3: SS+i; ii+1. Quay lại bước 2 Readln Bước 4: Thông báo giá trị S và kết thúc thuật toán. End.
  18. 4. Phân chia một bài toán thành nhiều bài toán nhỏ Khi giải một bài toán, ta thường chia bài toán lớn ban đầu thành nhiều bài toán con để việc giải bài toán ban đầu trở nên dễ dàng hơn, Và như vậy, khi cần giải quyết một vấn đề nào đó bằng máy tính, để viết một chương trình phức tạp ta có thể viết từng phần chương trình giải quyết từng vấn đề nhỏ. Như vậy, việc phân chia một bài toán thành nhiều bài toán nhỏ sẽ giúp cho việc giải quyết bài toán mạch lạc, việc kiểm tra sai sót thuận tiện, có thể thấy kết quả ở từng bước và có thể điều chỉnh kịp thời.
  19. 5. Sửa lỗi chương trình Trong dạy lập trình Pascal việc giúp học sinh nhận ra lỗi sai và cách sửa các lỗi đó là rất cần thiết và quan trọng. Để có thể sửa lỗi nhanh chóng cần có sự tích luỹ kinh nghiệm những lỗi thường hay gặp:
  20. III. Kết quả thực hiện các biện pháp Khi thực hiện thực nghiệm qua các đối tượng học sinh đã nêu trên, đa số các em tránh được các lỗi thường gặp khi học lập trình Pascal.Một số không ít học sinh có tiến bộ rõ rệt khi viết các chương trình có sử dụng lập trình có cấu trúc. Nâng cao việc yêu thích học tin học đối với một bộ phận học sinh. Bảng số liệu kết quả đạt được của học sinh lớp 8 cuối năm học 2019-2020 sau khi thực hiện biện pháp Giỏi Khá TB Yếu, kém Lớp TSHS SL % SL % SL % SL % 81 26 26 100,0 0 0,0 0 0,0 0 0,0 82 28 12 42,8 15 53,6 1 3,6 0 0,0 83 28 12 42,9 14 50,0 2 7,1 0 0,0 84 29 14 48,3 11 37,9 4 13,8 0 0,0 85 29 10 34,5 13 44,8 6 20,7 0 0,0
  21. IV. Kết luận Ý nghĩa của biện pháp đối với công tác giảng dạy và học tập của của học sinh: với mong muốn giúp cho việc dạy và học ngôn ngữ lập trình nói chung và Pascal nói riêng của giáo viên và học sinh được tốt hơn nhất là khi thực hành Biện pháp này cũng có thể áp dụng dạy kiến thức nâng cao cho học sinh ở cấp trung học phổ thông lớp 11 với lập trình Pascal. Đề xuất kiến nghị: Trên đây là toàn bộ kinh nghiệm của tôi qua nhiều năm liền dạy ở khối lớp 8 và bồi dưỡng học sinh giỏi môn Tin cũng như tham khảo qua nhiều nguồn thông tin, tư liệu khác nhau, rất mong được sự đóng góp của các đồng nghiệp nhằm giúp đề tài của tôi được hoàn thiện hơn.
  22. 7/18/2023 7:11:59 PM 23