Một số kiến thức giúp rèn kỹ năng viết chương trình pascal THCS

16 2 0
Một số kiến thức giúp rèn kỹ năng viết chương trình pascal THCS

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Cuộc cách mạng công nghiệp lần thứ 4 hiện nay đã và đang đặt ra nhiều thách thức như nguy cơ mất nhiều lao động song sẽ mang tới nhiều ngành nghề mới, cơ hội mới. Do đó, vấn đề đặt ra hiện nay là cần phải thay đổi căn bản, không chỉ đổi mới trên phương diện đào tạo ngành nghề hay giáo dục ở bậc đại học, mà cần thay đổi từ giáo dục bậc phổ thông, mẫu giáo… Tức là cần giáo dục học sinh có ý thức và kỹ năng của một công dân toàn cầu. Chương trình giáo dục phổ thông mới được thực hiện từ năm 20202021 thì môn Tin học trở thành môn học bắt buộc và trong thời đại thông tin bùng nổ ngày nay, việc lập được các chương trình tự hoạt động cho máy tính… là 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 căn bản và lâu dài. 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, rôbốt… Qua đó giúp các em có thêm niềm đam mê về tin học, cũng như định hướng về nghề nghiệp mà các em lựa chọn sau này. Do đó, xuất phát từ cơ sở trên, tôi đã chọn đề tài “Một số kiến thức giúp rèn kỹ năng viết chương trình Pascal cho học sinh lớp 8 trường PTDTNT THCS huyện Kế Sách”.

1 A MỞ ĐẦU Lý chọn đề tài : Cuộc cách mạng công nghiệp lần thứ đặt nhiều thách thức nguy nhiều lao động song mang tới nhiều ngành nghề mới, hội Do đó, vấn đề đặt cần phải thay đổi bản, không đổi phương diện đào tạo ngành nghề hay giáo dục bậc đại học, mà cần thay đổi từ giáo dục bậc phổ thông, mẫu giáo… Tức cần giáo dục học sinh có ý thức kỹ cơng dân tồn cầu Chương trình giáo dục phổ thơng thực từ năm 2020-2021 mơn Tin học trở thành môn học bắt buộc 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… 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 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 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, rơbốt… Qua giúp em có thêm niềm đam mê tin học, định hướng nghề nghiệp mà em lựa chọn sau Do đó, xuất phát từ sở trên, chọn đề tài “Một số kiến thức giúp rèn kỹ viết chương trình Pascal cho học sinh lớp trường PTDTNT THCS huyện Kế Sách” Mục đích, nhiệm vụ nghiên cứu: Do gặp phải khó khăn 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, nhiên, số 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 Pascal Do qua đề tài tơi muốn giới thiệu số kinh nghiệm dạy lập trình Pascal để giúp HS hiểu cách nhanh chóng, hiểu kiến thức kĩ lập trình Pascal số ví dụ nhằm giúp học sinh học tốt với môn học mẻ 2 Đối tượng phạm vi nghiên cứu: Đối tượng nghiên cứu: học sinh lớp 8A, 8B trường PTDTTN THCS huyện Kế Sách năm học 2018-2019 2019-2020 Phạm vi nghiên cứu: Một số kiến thức lập trình (Tin học 8, 3) Phương pháp nghiên cứu: -Tích lũy kinh nghiệm thực tiễn trình giảng dạy nhà trường -Trao đổi kinh nghiệm với đồng nghiệp lắng nghe góp ý học sinh, phụ huynh học sinh, … -Tham gia học tập diễn đàn … Tính đề tài: Hiện nay, áp dụng phát huy phương pháp dạy học theo hướng phát triển lực học sinh, phát huy tối đa tư sáng tạo em thông qua việc tự học, tự nghiên cứu, Tuy nhiên Tin học môn học nhà trường lập trình lại nội dung khó với em Do tơi thấy việc áp dụng phát huy phương pháp dạy học trực quan phát huy tối đa tư sáng tạo học sinh thông qua việc tự học, tự nghiên cứu Đó cần dạy nội dung cho học sinh, người giáo viên phải biết phân tích nội dung liên quan đến hoạt động nào; số hoạt động lại phân tích thành hoạt động thành phần; vào mục tiêu tiết học, trình độ học sinh, trang bị cho học sinh kiến thức cần thiết để giúp cho học sinh dễ nhớ, dễ hiểu phát huy khả tư sáng tạo Do đó, sau áp dụng tơi thấy đề tài giúp học sinh hiểu cách nhanh chóng, hiểu kiến thức kĩ lập trình Pascal nhằm giúp học sinh học tốt với môn học 3 B NỘI DUNG Cơ sở lý luận-Một số lỗi sai thường gặp học sinh Ban đầu học lập trình Pascal học sinh thường gặp số lỗi sau: Không hiểu kiểu liệu, khai báo biến không kiểu liệu, không hiểu thuật tốn (viết chương trình) gì? Do muốn học lập trình được, em phải nắm vững kiến thức ngơn ngữ lập trình cách có hệ thống (khai báo biến, kiểu liệu,…), biết vận dụng câu lệnh theo cú pháp cách linh hoạt vào toán cụ thể, đòi hỏi học sinh phải có tư logic suy nghĩ linh hoạt Vì vậy, trình dạy học giáo viên cần định hướng cho em biết cách học nghiên cứu cách có hệ thống ngơn ngữ lập trình học, biết cách vận dụng lí thuyết vào tập, biết phân dạng tập giải tập với nhiều cách khác Đó nhiệm vụ trọng tâm của đề tài *Một số lỗi sai thường gặp học sinh lập trình Pascal: - Không biết khai báo biến - Không phân biệt biến hằng: Đây khái niệm tương đối khó em học sinh lớp trừu tượng Do để hướng dẫn học sinh dễ hiểu trước hết nên dẫn chứng em khái niệm mà em quen “địa Ơ” Excel - Khơng hiểu liệu, liệu kiểu mảng… - Không hiểu rõ câu lệnh… Cơ sở thực tiễn-Các kiểu liệu 2.1 Tại phải khai báo biến: Hoạt động chương trình máy tính xử lí liệu Trước máy tính xử lí, liệu nhập vào lưu nhớ máy tính Ví dụ, muốn cộng hai số a b, trước hết hai số nhập lưu nhớ máy tính, sau máy tính thực phép cộng a+b 4 Để chương trình ln biết xác liệu cần xử lí lưu vị trí nhớ, ngơn ngữ lập trình cung cấp cơng cụ lập trình quan trọng biến nhớ, hay gọi ngắn gọn biến 2.2 Không hiểu biến, kiểu liệu: a) Pascal ngôn ngữ chặt chẽ kiểu liệu Mỗi biến, khai báo phải thuộc kiểu liệu Ví dụ: Var a: integer; {biến a có kiểu integer} b: char; {biến b có kiểu ký tự} b) Mỗi biến gán (hoặc so sánh với) giá trị tương thích với kiểu liệu Ví dụ: Var a: integer; {kiểu số nguyên} b:char; {kiểu ký tự} c:real; {kiểu số thực} d: longint; {kiểu số nguyên có miền giá trị lớn} Những phép gán sau hợp lệ: a := 1; b := ‘c’; c := 1; {biến số thực gán số nguyên} c := 1.0; {1.0 số thực có giá trị 1} c := 1.2; d := 1; d := 1000000; c := d; {biến số thực gán số nguyên} Những phép gán sau không hợp lệ: a := 1.2; {số nguyên gán số thực} d := 1.2; a := 1000000; {lỗi tràn số, số nguyên 1000000 có giá trị lớn so với miền giá trị integer} b := 1; {kiểu ký tự gán số} b := ‘abc’; {‘abc’ số kiểu chuỗi} 2.3 Mỗi kiểu liệu có số thao tác kiểu liệu Ví dụ: -Kiểu số nguyên số thực có thao tác cộng, trừ, nhân, chia, … -Kiểu boolean có thao tác and, or, not… Các giải pháp tiến hành: Khi dạy học lập trình nói chung Pascal nói riêng, nhiều người dạy người học nơn nóng muốn lập trình mà khơng nghĩ bước ban đầu phải hiểu rõ khái niệm bản, ví dụ như: bảng chữ cái, kí hiệu, kiểu liệu… Do tơi giới thiệu cho học sinh hiểu rõ kiểu liệu Pascal kết hợp sử dụng phương pháp dạy học tích cực: 3.1 Kiểu liệu a) Kiểu số nguyên - integer Các kiểu liệu số nguyên Pascal: integer -32768 32767 byte 255 shortint -128 127 word 65535 longint -2147483648 2147483647 b) Kiểu số thực - real real 2.9*10-39 1.7*1038 số Cách viết: o Viết theo kiểu số thập phân bình thường Ví dụ: 3.14 o Viết theo kiểu có phần định trị phần mũ Ví dụ: 3.93E+02 = 3.93 * 102 = 393 3.14E-02 = 3.14 * 10-2 = 0.0314 c) Kiểu logic - boolean Kiểu boolean đại lượng nhận hai giá trị TRUE (đúng) FALSE (sai) Các phép toán kiểu Boolean: and, or, not Ví dụ 1: a := true; b := false; c := a and b; { c = false} d := a or b; {d = true} e := not(a); {e = false} Các phép toán quan hệ sau cho kết kiểu boolean: Ví dụ 2: a := 5; b := 6; c := (a > b); {c = false} d := (ab); {d = true} d) Kiểu ký tự - char Các giá trị thuộc kiểu liệu chữ viết, ký hiệu Cách viết: ký tự đặt hai dấu nháy đơn Ví dụ: Var x: char; … x := ‘A’; x := ‘a’; x := ‘+’; x := ‘1’; {chữ số 1, khác với số nguyên 1} x := ‘ ‘; {ký tự trống} e) Kiểu chuỗi ký tự - string Các giá trị thuộc kiểu chuỗi liên tiếp ký tự Chuỗi ký tự trống (khơng có ký tự nào) có ký tự có tối đa 255 ký tự Cách viết: chuỗi ký tự viết hai dấu nháy đơn Cách khai báo Var s: string; {khai báo chuỗi s có độ dài tối đa 255 ký tự} s1: string[80]; {khai báo chuỗi s1 có độ dài tối đa 80 ký tự} s2: string[21]; {khai báo chuỗi s1 có độ dài tối đa 21 ký tự} Ví dụ: s := ‘Chao cac ban’; s1 := ‘’; {chuỗi rỗng} 3.2 Các phép toán kiểu liệu: a)Các phép toán số học: Phép toán * / DIV MOD + - Kiểu số hạng Nguyên Kiểu kết Nguyên Real Real Real, nguyên Nguyên Real Real Real Real Real, nguyên Nguyên Real Nguyên Nguyên Nguyên Nguyên Nguyên Real Real Real, nguyên Nguyên Real Nguyên Real Real Real, nguyên Real b)Các phép toán logic – boolean: Phép toán NOT AND OR Kiểu số hạng Boolean Kiểu kết Boolean Boolean Boolean Boolean Boolean c)Các phép toán so sánh: Phép toán Các phép toán so sánh Kiểu số hạng Kiểu kết -Kiểu integer hay real Boolean -Cùng kiểu kí tự 3.3 Sử dụng phương pháp dạy học tích cực: 3.3.1 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 học sinh phân biệt biến hằng: Để hướng dẫn học sinh dễ hiểu trước hết nên dẫn chứng em khái niệm mà em quen “địa Ơ” Excel - Hiểu biết địa Ô Excel - So sánh địa Ơ Excel nhớ (biến) Pascal - Hoạt động phân tích dùng biến, dùng b Phân tách hoạt động thành thành phần Ví dụ 1: 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 thố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 9 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ương trình Ví dụ 2: Hiểu ý nghĩa cơng dụng câu lệnh IF THEN ELSE ; Ý nghĩa: Nếu ĐK thực CV1, ngược lại (ĐK sai) thực CV2 Cụ thể: IF a>b THEN max:=a ELSE min:=b; 3.3.2 Phân bậc hoạt động làm điều khiển q trình dạy học: a.Chính xác hóa mục tiêu: Nếu khơng có phân bậc hoạt động người ta thường đề mục tiêu dạy học cách chung chung Ví dụ: Để học sinh nắm khái niệm máng chiều, giáo viên phân bậc hoạt động để đề mục tiêu xác hơn: -Học sinh biết cách khai báo mảng chiều -Biết nhập giá trị vào mảng -Biết cách xuất giá trị mảng -Thành thạo việc truy xuất đến phần tử mảng b.Tuần tự nâng cao yêu cầu: Giáo viên dựa vào phân bậc hoạt động để nâng cao yêu cầu học sinh c.Tạm thời hạ thấp yêu cầu cần thiết: Trường hợp học sinh gặp khó khăn hoạt động, giáo viên tạm thời hạ thấp yêu cầu Sau học sinh đạt nấc thang này, yêu cầu lại tiếp tục nâng cao d.Dạy học phân hóa: Trong dạy học phân hóa, người giáo viên cần tính tới đặc điểm cá nhân học sinh, ý đến đối tượng hay loại đối tượng trình độ tri thức, kĩ năng, kĩ xảo đạt, khả tiếp thu, nhu cầu luyện tập,…để tích cực phân hóa hoạt động học sinh học tập 3.4 Có nhiều dạng tập: Nguyên tắc làm quen với ngôn ngữ lập trình đó, người học cần phải làm quen với nhiều dạng tập tập viết thuật toán, 10 tập đọc hiểu chương trình, tập sửa lỗi chương trình, giới hạn viết xin nêu số ví dụ sau:,… *Bài tập khai báo biến-kiểu liệu: Ví dụ 1: Trong Pascal, biến nhận giá trị nguyên phạm vi từ 10 đến 25532 biến khai báo kiểu liệu nào? Đó kiểu integer, word, longint Ví dụ 2: Biến P nhận giá trị 5; 10; 15; 20; 30; 60; 90 biến X nhận giá trị 0,1; 0,2; 0,3; 0,4; 0,5 Khai báo khai báo sau đúng? a var X,P:byte; b var P,X:real; c var P:real; X:byte; d var X:real; P:byte; Khai báo d Ví dụ 3: Viết chương trình nhập số nguyên x, y từ bàn phím, sau hốn đổi giá trị xuất kết hình Chương trình yêu cầu khai báo hai biến x y có kiểu liệu số nguyên (integer), nhiên ta khai báo thêm biến tạm z kiểu integer, ta khai báo sau: Var x,y,z:integer; Ví dụ 4: Hãy viết chương trình nhập vào bán kính hình tròn in hình chu vi hình tròn Ở phương diện lập trình bán kính ta khai báo kiểu số ngun hay thực, nhiên cơng thức để tính chu vi (chu vi = 2.pi.r pi=3,14) chu vi bắt buộc có kiểu liệu số thực Chương trình khai báo sau: Cách 1: Var r:integer; Chuvi:real; Cách 2: Var r,chuvi:real; 11 Ví dụ (Bài SGK): Thử viết chương trình nhập số nguyên X Y, in giá trị X Y hình Sau hốn đổi giá trị X Y in lại hình giá trị X Y Ở ta gợi ý sau: Giả sử ta có hai ly nước: “một ly nước cam ly nước chanh”, làm để đổ ly nước cam qua ly nước chanh ngược lại? Ly nước cam Ly nước chanh Ở ta thực trực tiếp việc đổ ly nước cam vào ly nước chanh ngược lại được, mà ta phải có thêm ly không để đổ ly nước cam chanh vào ly không Sau đổ ly nước cam vào ly khơng ta đổ ly nước chanh vào ly nước cam (ly khơng) Giải thích kĩ thêm chút ta thực trực tiếp hai phép gán: x←y y←x, sau phép gán thứ nhất, giá trị x bị thay giá trị y kết hai phép gán hai biến x y có giá trị ban đầu biến y Vì thế, cần dùng biến trung gian, ví dụ biến z, để lưu tạm thời giá trị biến x Chương trình viết sau: Program hoan_doi; 12 Var x,y,z:integer; Begin Readln(x,y); Writeln(x,’ ’,y); z:=x; x:=y; y:=z; Writeln(x,’ ’,y); Readln ; End Ví dụ 6: Quy lạ quen: Khi dạy tính tổng S = 12 + 22 + 32 +… + n2 giáo viên cho học sinh giải tương tự tập viết chương trình tính tổng S = + + + …+ n Kết đạt sau áp dụng biện pháp: Qua hai năm thực đề tài kết đạt khả quan: *Đối với học sinh giỏi: Năm học 2018-2019 đạt 01 giải cấp huyện, 01 giải II cấp tỉnh; năm học 2019-2020 01 giải cấp huyện (cấp Tỉnh chưa thi) *Đối với HS đại trà: Bảng số liệu học sinh lớp năm học 2018-2019 chưa thực đề tài: Lớp 8A 8B Số học sinh khảo sát 32 31 Học kì I -Khi thực nghiệm qua đối tượng học sinh nêu trên, em biết khai báo biến với kiểu liệu tránh lỗi thường gặp học lập trình Pascal -Bảng số liệu kết đạt học sinh lớp năm học 2019-2020 sau thực đề tài: 13 Lớp 8A 8B Số học sinh khảo sát 31 31 Học kì I 22 19 C KẾT LUẬN Kết luận Đổi phương pháp dạy học vấn đề có ý nghĩa quan trọng việc nâng cao chất lượng dạy học Đó mục tiêu quan trọng cải cách giáo dục nước ta Tuy nhiên việc ứng 14 dụng CNTT nhằm đổi nội dung, phương pháp dạy học công việc lâu dài, khó khăn đòi hỏi nhiều điều kiện sở vật chất, tài lực đội ngũ giáo viên Qua thực tế giảng dạy học tập, giúp đỡ thầy cô, bạn đồng nghiệp, thân tiếp thu nhiều điều bổ ích, thiết thực cho q trình giảng dạy công tác Tôi mạnh dạn chọn đề tài với mong muốn đóng góp phần cơng sức nhỏ bé vào nghiệp giáo dục nhà trường việc đổi phương pháp dạy học Kiến nghi Để việc đổi phương pháp dạy học nhà trường tốt xin kiến nghị: nhà trường tạo điều kiện sở vật chất, tinh thần cho giáo viên giảng dạy đồng thời tạo điều kiện cho GV tập huấn chuyên đề bồi dưỡng học sinh giỏi, chương trình ứng dụng CNTT giảng dạy, để bổ sung thêm kiến thức học hỏi thêm kinh nghiệm đồng nghiệp Tăng cường sách tham khảo tài liệu Tin học để giáo viên có sở trao đổi mở rộng thêm kiến thức, cung cấp thêm máy chiếu để tiết dạy trở nên sinh động hơn, giúp học sinh dễ quan sát tiếp thu tốt Trong trình viết đề tài, điều kiện thời gian lực có hạn, đề tài khơng tránh khỏi sai sót hạn chế Tơi mong nhận đóng góp bảo thầy cô giáo đồng nghiệp để làm kinh nghiệm quý báu cho thân trình giảng dạy Tài liệu tham khảo -Sáng kiến kinh nghiệm cấp huyện, tỉnh qua năm -Tin học dành cho Trung học sở (Quyển 3) Bộ giáo dục -Nhiệm vụ công nghệ thông tin Bộ GD-ĐT, Sở GD-ĐT Sóc Trăng 15 Nhận xét Hội đồng Xét duyệt sáng kiến cải tiến kỹ thuật Trường PTDTNT THCS Huyện Kế Sách 16 ... sau áp dụng thấy đề tài giúp học sinh hiểu cách nhanh chóng, hiểu kiến thức kĩ lập trình Pascal nhằm giúp học sinh học tốt với môn học 3 B NỘI DUNG Cơ sở lý luận -Một số lỗi sai thường gặp học... lập trình Pascal học sinh thường gặp số lỗi sau: Không hiểu kiểu liệu, khai báo biến không kiểu liệu, khơng hiểu thuật tốn (viết chương trình) gì? Do muốn học lập trình được, em phải nắm vững kiến. .. dạng tập tập viết thuật toán, 10 tập đọc hiểu chương trình, tập sửa lỗi chương trình, giới hạn viết tơi xin nêu số ví dụ sau:,… *Bài tập khai báo biến-kiểu liệu: Ví dụ 1: Trong Pascal, biến

Ngày đăng: 06/08/2022, 19:16

Tài liệu cùng người dùng

Tài liệu liên quan