1. Trang chủ
  2. » Giáo Dục - Đào Tạo

SKKN phương pháp giảng dạy ngôn ngữ lập trình c++ cho đội tuyển học sinh giỏi tin học THPT

23 8 0

Đ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

Nội dung

MỤC LỤC MỤC LỤC PHẦN MỞ ĐẦU Lý chọn đề tài 2 Mục tiêu nghiêu cứu Đối tượng nghiêncứu Phương pháp nghiên cứu Phạm vi nghiên cứu PHẦN NỘI DUNG Chương I CƠ SỞ LÝ LUẬN VÀ THỰC TIỄN 1.1.Ngơn ngữ lập trình C++ 1.2.Các phương pháp giảng dạy ngơn ngữ lập trình 1.2.1.Phương pháp kết hợp lý thuyết thực hành 1.2.2.Phương pháp dạy ngơn ngữ lập trình dựa tương quan tính kế thừa 1.2.3.Phương pháp bàn tay nặn bột 1.2.4.Phương pháp hoạt động nhóm dạy học theo dự án 1.3 Dạy lập trình cho đội tuyển học sinh giỏi trường THPT 1.4 Tiểu kết chương Chương GIẢNG DẠY NGƠN NGỮ LẬP TRÌNH C++ DỰA TRÊN SỰ TƯƠNG QUAN VÀ KẾ THỪA 2.1 Sự tương quan ngôn ngữ Pascal ngôn ngữ C++ 2.2 Hướng dẫn giảng dạy số phần cụ thể 16 Trong chương tác giả cố gắng trình bày điểm tương đồng NNLT từ tìm cách chuyển đổi dựa mô tả tương đồng thông qua nội dung cụ thể 20 Trong trình giảng dạy bên cạnh phương pháp dựa tương quan áp dụng linh hoạt phương pháp khác giảng dạy NNLT cho có hiệu 20 Chương KẾT QUẢ ÁP DỤNG 21 PHẦN KẾT LUẬN .22 Kết đạt 22 Hạn chế đề tài 22 Hướng phát triển kiến nghị 22 DANH MỤC CÁC CHỮ VIẾT TẮT HS Học sinh GV Giáo viên HSG Học sinh giỏi CNTT-TT Công nghệ thông tin truyền thông NNLT Ngôn ngữ lập trình SKKN Sáng kiến kinh nghiệm GDPT Giáo dục phổ thông PHẦN MỞ ĐẦU Lý chọn đề tài Ứng dụng tin học giai đoạn trở thành phần tất yếu đời sống xã hội đại Vì có vai trị quan trọng nên tất nước giới nước ta có sách đầu tư cho tin học để không bị lạc hậu công nghệ Ngày tin học không dừng lại mục tiêu ứng dụng sản phẩm phần mềm vào lĩnh vực mà tin học phải trở thành thứ hàng hóa, khơng sản xuất nước mà xuất nước Bởi vậy, môn tin học nhà trường THPT, đặc biệt kiến thức lập trình chiếm vị trí quan trọng Bên cạnh đó, với nhiệm vụ bồi dưỡng nhân tài mà Đảng, nhà nước ta giao phó cho giáo dục cơng tác bồi dưỡng học sinh giỏi trở thành nhiệm vụ quan trọng nhà trường Có thể nói chất lượng học sinh giỏi thể chất lượng chiều sâu nhà trường trình dạy học Trong năm gần Bộ giáo dục đào tạo có sách thay đổi mạnh mẽ chương trình giáo dục, từ giáo dục tiếp cận nội dung trọng tiếp cận lực người học, nghĩa từ chỗ quan tâm đến việc HS học đến chỗ quan tâm HS vận dụng qua việc học Điều địi hỏi phương pháp dạy học GV phải thay đổi theo, người giáo viên phải áp dụng phương pháp, kĩ thuật tích cực để xây dựng nên chuyên đề nhằm giúp HS trở thành chủ thể trình nhận thức, đảm bảo kết đầu theo yêu cầu Nhận thức từ quan điểm nên quá trình dạy học mình, năm qua coi nhiệm vụ bồi dưỡng HSG nhiệm vụ trọng tâm Mặt khác, qua tìm hiểu thực tế trường THPT cho thấy, ngoại trừ trường chuyên trường THPT NNLT sử dụng chủ yếu để dạy cho đội tuyển HSG tin học ngôn ngữ Pascal Tuy nhiên kỳ thi học sinh giỏi Tỉnh, Quốc gia ngơn ngữ C++ ngơn ngữ sử dụng thay dần ngơn ngữ lập trình Pascal Vì để em học sinh đội tuyển HSG Tin học nhà trường tiếp cận NNLT C++ vấn đề cấp thiết Đây tiền đề cho em chọn vào đội tuyển HSG quốc gia khơng phải bỡ ngỡ để học NNLT thuận lợi cho em học ngành CNTT bậc đại học dễ tạo hứng thú học tập cho em Mặt khác, ngơn ngữ lập trình C ++ ngôn ngữ mạnh, ngôn ngữ nhà tin học chuyên nghiệp thống nhà lập trình nghiệp dư sử dụng để lập trình hệ thống, lập trình ứng dụng Vì việc học C ++ nhu cầu tất yếu, kỹ sư, sinh viên chuyên ngành khoa học kỹ thuật khác học sinh phổ thơng Đặc biệt có nhiều trang web thi trực tuyến để luyện tập, chương trình tham khảo viết C++ internet có nhiều Từ việc thấy tầm quan trọng ngơn ngữ lập trình C ++ để giúp giáo viên học sinh nghiên cứu, học ngơn ngữ lập trình này, tơi chọn đề tài: “Phương pháp giảng dạy ngơn ngữ lập trình C++ cho đội tuyển học sinh giỏi tin học THPT” Mục tiêu nghiêu cứu Mục tiêu đề tài là: - Xây dựng phương pháp giảng dạy ngơn ngữ lập trình C ++ dựa vào ngơn ngữ biết NNLT Pascal - Nghiên cứu tương đồng hai ngôn ngữ giúp cho việc học tập NNLT ++ C thuận lợi Đối tượng nghiêncứu - Các tài liệu phương pháp dạy lập trình - Các tài liệu NNLT Pascal NNLT C++ - Đối tượng khảo sát thực nghiệm học sinh thuộc đội tuyển HSG tin học trường Phương pháp nghiên cứu - Phương pháp nghiên cứu lý luận - Phương pháp phân tích, hệ thống hóa tài liệu, tổng kết kinh nghiệm Phạm vi nghiên cứu - Đề tài tập tập trung chủ yếu vào việc tìm tương đồng hai NNLT NNLT Pascal NNLT C++ từ triển khai vào việc giảng dạy số nội dung liên quan Mỗi nội dung có ví dụ viết theo NNLT - Đề tài số phương pháp giảng dạy NNLT cho có hiệu - Kế hoạch nghiên cứu: từ tháng 5/2017 đến 5/2019 + Lên kế hoạch, nghiên cứu sở lý luận thực tiễn đề tài, soạn hệ thống câu hỏi tập cho chuyên đề liên quan: 5/2017 đến 10/2017 + Tiến hành dạy cho HS giỏi: Năm học 2017-2018: Triển khai từ tháng 10/2017 đến tháng 9/2018 Năm học 2018-2019: Triển khai từ tháng 10/2018 đến tháng 4/2019 + Tiến hành thực nghiệm đánh giá kết quả: tiến hành vào đợt cuối tháng 9/2018 cuối tháng 4/2019 - Hoàn thành SKKN: 05/2019 Cấu trúc sáng kiến kinh nghiệm Gồm phần - Phần mở đầu - Phần nội dung gồm ba chương: + Chương I: Cơ sở lý luận thực tiễn + Chương II: Giảng dạy NNLT C++ dựa tương quan kế thừa + Chương IIII: Kết áp dụng - Phần kết luận PHẦN NỘI DUNG Chương I CƠ SỞ LÝ LUẬN VÀ THỰC TIỄN 1.1 Ngơn ngữ lập trình C++ C++ ngơn ngữ lập trình đa dụng dùng để lập trình cho hệ thống lớn, lập trình hệ điều hành ứng dụng, game hay chí ta dùng C ++ để lập trình web Với C++ ta thấy mềm dẻo qua việc hỗ trợ cho ta tính cao cấp lập trình hướng đối tượng, cung cấp cho ta khả can thiệp sâu vào bên nhớ máy tính thơng qua trỏ C++ ngơn ngữ biên dịch – tùy thuộc vào hệ thống khác mà ta có trình biên dịch tương ứng Ngơn ngữ lập trình C++ ngơn ngữ lập trình phổ biến nay, sử dụng hàng triệu lập trình viên khắp giới Những điểm mạnh C++ kể đến như: - Ngôn ngữ C++ ngôn ngữ cấp trung Nó có kết hợp tính ngôn ngữ cấp cao thấp C ++ sử dụng cho lập trình để giúp người dùng thâm nhập vào phần cứng Hỗ trợ chức ngôn ngữ lập trình bậc cao - C++ ngơn ngữ lập trình có cấu trúc Nó cho phép chương trình phức tạp chia thành chương trình đơn giản nhỏ Đó gọi hàm Nó cịn cho phép di chuyển liệu dễ dàng hàm Mà bạn thường xuyên thấy ngôn ngữ lập trình đại ngày - C++ NNLT thực với nhiều tính khác Nó cho phép người dùng truy cập trực tiếp vào API phần cứng máy, xuất phiên dịch Đặc biệt sử dụng tài nguyên máy cấp phát nhớ Đó tối ưu ứng dụng trình điều khiển hệ thống nhúng - C++ NNLT vô hiệu tiện dụng Nó sử dụng cho hệ thống Nó nằm hệ thống lớn hệ điều hành Windows, Unix,… - C++ ngơn ngữ lập trình đa mục đích Có thể ứng dụng trực tiếp vào ứng dụng doanh nghiệp, game, đồ họa,… 1.2 Các phương pháp giảng dạy ngơn ngữ lập trình 1.2.1 Phương pháp kết hợp lý thuyết thực hành Đây phương pháp truyền thống dạy NNLT, kết hợp nhiều phương pháp [8] - Phương pháp thuyết trình kết hợp nêu vấn đề - Phương pháp đặt giải tình có vấn đề - Phương pháp động não Quy trình thực môđun thường theo bước sau: - Bước 1: Nêu trình bày lý thuyết vấn đề cần nghiên cứu - Bước 2: Nêu giải ví dụ liên quan đến lý thuyết - Bước 3: Làm tập khái quát - Bước 4: GV Giao tập nhà - Bước 5: HS thực hành lại ví dụ để hiểu lý thuyết, hồn thành tập nhà, hiểu cách thức thực chuyển sang modun 1.2.2 Phương pháp dạy ngôn ngữ lập trình dựa tương quan tính kế thừa Đây phương pháp dựa lý thuyết việc học ngoại ngữ, ta học ngoại ngữ ngoại ngữ cách học hoàn toàn tương tự việc học dễ dàng Vấn đề cốt yếu lập trình cơng thức Cấu trúc liệu + Giải thuật = Chương trình Vì cần biết cách tổ chức liệu có giải thuật chương trình viết NNLT thực dễ dàng Các NNLT khác từ khóa cú pháp cịn cấu trúc rẽ nhánh, lặp, cách thức thực ý nghĩa hồn tồn giống [8] Lợi dụng tính chất này, ta so sánh tương đồng NNLT (ví dụ Pascal C++) để phát triển ngôn ngữ từ ngôn ngữ biết Công việc tiến hành theo bước: - Bước 1: Xác định vấn đề lý thuyết liên quan câu hỏi cần giải - Bước 2: Xây dựng thuật giải - Bước 3: Giải ngôn ngữ biết - Bước 4: Chuyển đổi sang ngơn ngữ dựa vào tương đồng Quy trình thực theo cấp độ tăng dần, chương trình đầu viết ngơn ngữ cũ sau viết theo kiểu tựa ngơn ngữ cũ phát triển lên thành ngôn ngữ Sau thành thục ngơn ngữ lúc tính tương đồng hoàn thành “sứ mạng” ban đầu mà đề học NNLT từ kế thừa NNLT cũ biết trước 1.2.3 Phương pháp bàn tay nặn bột Trong dạy học môn dạy học NNLT Các kiến nội dung kiến thức tìm hiểu thơng qua kết Output Học sinh tìm tịi thuật tốn, viết chương trình, chỉnh sửa lỗi kết kết mơ tả Từ lĩnh hội tri thức [8] Quá trình thường thực theo bước: - Bước 1: Tình xuất phát câu hỏi nêu vấn đề - Bước 2: Bộc lộ quan niệm ban đầu học sinh - Bước 3: Đề xuất câu hỏi hay giả thuyết thiết kế phương án thực nghiệm 3.1 Đề xuất câu hỏi 3.2 Đề xuất phương án thực nghiệm nghiên cứu - Bước 4: Tiến hành thực nghiệm tìm tịi – nghiên cứu - Bước 5: Kết luận kiến thức 1.2.4 Phương pháp hoạt động nhóm dạy học theo dự án Giải vấn đề phát sinh từ thực tiễn Ở nội dung này, giáo viên yêu cầu HS thực dự án học tập mà tốn đưa bắt buộc HS phải vận dụng thuật tốn, NNLT theo u cầu giải [8] Thông thường phương pháp địi hỏi cơng việc hoạt động nhóm nhiều sau học sinh nắm lý thuyết thực hành NNLT cụ thể Quá trình thực theo bước: - Bước 1: GV giao dự án - Bước 2: Triển khai thực dự án - Bước 3: Đánh giá dự án 1.3 Dạy lập trình cho đội tuyển học sinh giỏi trường THPT Qua thực tế giảng dạy đội tuyển tìm hiểu việc dạy NNLT trường THPT địa bàn tỉnh cho thấy có trường thực dạy NNLT C ++ Các trường có tổ chức dạy áp dụng theo phương pháp kết hợp lý thuyết thực hành, chưa trọng đến tính kế thừa NNLT học Về ý thức chuyển đổi từ NNLT Pascal sang NNLT C ++ đội ngũ giáo viên tin học nhiều thầy cô quan tâm nhiên mơi trường áp dụng cịn phần kiến thức ngôn ngữ lập trình C ++ có nhiều điểm so với NNLT Pascal (ngôn ngữ truyền thống lâu nay) nên việc chuyển đổi chưa áp dụng nhiều trường 1.4 Tiểu kết chương Có nhiều phương pháp để giảng dạy ngơn ngữ lập trình C ++ Việc sử dụng phương pháp tùy theo đối tượng giảng dạy cách thức truyền thụ kiến thức người giáo viên Trong đề tài này, tập trung làm rõ phương pháp giảng dạy ngôn ngữ lập trình ++ C dựa tương quan kế thừa, việc nghiên cứu tương đồng hai NNLT C++ Pascal làm sở giảng dạy ngôn ngữ C ++ cho đội tuyển HSG tin học nhà trường THPT Chương GIẢNG DẠY NGƠN NGỮ LẬP TRÌNH C++ DỰA TRÊN SỰ TƯƠNG QUAN VÀ KẾ THỪA 2.1 Sự tương quan ngôn ngữ Pascal ngôn ngữ C++ - Về đặc điểm ngôn ngữ + NNLT Pascal: ngữ pháp, ngữ nghĩa đơn giản có tính logic; cấu trúc chương trình rõ ràng, dễ hiểu; dễ sửa chữa, cải tiến + NNLT C++: Bộ lệnh phù hợp với phương pháp lập trình cấu trúc, Kiểu liệu phong phú, chương trình C gồm nhiều hàm hàm rời Là ngôn ngữ linh động cú pháp, chấp nhận nhiều cách thể chương trình Có mạnh xử lý liệu số, văn bản, sở liệu Để tìm hiểu tương đồng NNLT Pascal C++ ta lập bảng so sánh sau: Pascal [2],[4],[5],[7] C++ [1],[3] Tên TT Ý nghĩa Begin { Phần End, } thân Ví dụ: Ví du: chương Begin { trình Writeln(‘Xin chao:’); count= Ví dụ: >= +) > ví dụ: > +) < Ví dụ: < + ) >= Ví dụ: >= 16 + )

Ngày đăng: 12/10/2022, 09:57

HÌNH ẢNH LIÊN QUAN

Để tìm hiểu sự tương đồng giữa NNLT Pascal và C++ ta lập bảng so sánh sau: - SKKN phương pháp giảng dạy ngôn ngữ lập trình c++ cho đội tuyển học sinh giỏi tin học THPT
t ìm hiểu sự tương đồng giữa NNLT Pascal và C++ ta lập bảng so sánh sau: (Trang 7)
Dựa vào bảng so sánh sự tương đồng tương ứng với các nội dung cụ thể ta thực hiện theo các bước sau: - SKKN phương pháp giảng dạy ngôn ngữ lập trình c++ cho đội tuyển học sinh giỏi tin học THPT
a vào bảng so sánh sự tương đồng tương ứng với các nội dung cụ thể ta thực hiện theo các bước sau: (Trang 16)
Output: Đưa ra màn hình các nghiệm thực hoặc thông báo ” phuong trinh vo nghiem”. Program giai; - SKKN phương pháp giảng dạy ngôn ngữ lập trình c++ cho đội tuyển học sinh giỏi tin học THPT
utput Đưa ra màn hình các nghiệm thực hoặc thông báo ” phuong trinh vo nghiem”. Program giai; (Trang 18)
Bài toán 1: Tính và đưa kết quả ra màn hình - SKKN phương pháp giảng dạy ngôn ngữ lập trình c++ cho đội tuyển học sinh giỏi tin học THPT
i toán 1: Tính và đưa kết quả ra màn hình (Trang 19)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w