Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
210,5 KB
Nội dung
SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ TRƯỜNG THPT HOẰNG HÓA SÁNG KIẾN KINH NGHIỆM TÊN ĐỀ TÀI “SỬ DỤNG NGÔN NGỮ C++ KẾT HỢP ĐỔI MỚI PHƯƠNG PHÁP GIẢNG DẠY TRONG BÀI KIỂU MẢNG MỘT CHIỀU” Người thực hiện: Nguyễn Thị Hường Chức vụ: Giáo viên SKKN thuộc lĩnh vực: Tin Học THANH HOÁ, NĂM 2021 MỤC LỤC Mở đầu .- 1.1 Lí chọn đề tài: .- 1.2 Mục đích nghiên cứu - 1.3 Đối tượng nghiên cứu .- 1.4 Phương pháp nghiên cứu - Nội dung sáng kiến kinh nghiệm .- 2.1 Cơ sở lí luận sáng kiến kinh nghiệm - 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm - 2.3 Các sáng kiến kinh nghiệm giải pháp sử dụng để giải vấn đề .- Chuẩn kiến thức, kỹ năng: - Phương pháp phương tiện dạy học: - A KHỞI ĐỘNG - Hoạt động 1: Kiểm tra cũ - Hoạt động 2: Tìm hiểu tốn ví dụ - B HÌNH THÀNH KIẾN THỨC - Hoạt động 3: Tìm hiểu kiểu mảng chiều - Hoạt động 4: Tìm hiểu cách khai báo biến cách tham chiếu đến phần tử mảng chiều - Hoạt động 5: Rèn luyện kĩ sử dụng kiểu mảng chiều - 12 Hoạt động 6: Trả lời câu hỏi mảng chiều - 13 C VẬN DỤNG - 14 Hoạt động 7: Lập trình giải tốn “Tìm phần tử nhỏ nhất” .- 14 Hoạt động 8: Sắp xếp dãy số nguyên thuật tốn tráo đổi .- 16 D TÌM TỊI, MỞ RỘNG: - 17 Hoạt động 9: Gán giá trị cho phần tử - 17 E HƯỚNG DẪN HỌC Ở NHÀ .- 18 2.4 Hiệu sáng kiến kinh nghiệm hoạt động giáo dục, với thân, đồng nghiệp nhà trường - 19 Kết luận, kiến nghị - 19 3.1 Kết luận - 19 3.2 Kiến nghị - 20 Tài liệu tham khảo - 21 - Mở đầu 1.1 Lí chọn đề tài: Rất nhiều thi quốc tế diễn nước ta gặt hái nhiều thành công lĩnh vực giáo dục mang nhiều huy chương vàng, bạc, đồng danh giá có góp mặt mơn Tin học Đó minh chứng rõ cho thấy Việt Nam nước khơng thua so với cường quốc năm châu Vậy thực trạng chung nhà trường THPT môn Tin học lại khơng đón nhận cách nhiệt tình từ phía em học sinh Phải em mơn phụ hay q trừu tượng khó để em yêu thích đam mê Mặc dù em biết thời kỳ công nghệ thông tin ngày tin học phần thiếu phát triển chung nhân loại Đó câu hỏi đặt nhiều không cho người giáo viên chúng tơi mà cho tồn ngành giáo dục cho toàn xã hội Liệu giải pháp tốt để khắc phục tình trạng Tựu chung lại dù lí nguyên nhân để người giáo viên chúng tơi trăn trở oằn tiết học mong em có niềm đam mê mơn học để mục tiêu cuối không huy chương vàng mà sáng chế, phát minh tạo nhiều sản phẩm giúp ích cho đời Tơi tham dự đợt tập huấn bàn vấn đề “Phương pháp kĩ thuật tổ chức hoạt động học theo nhóm hướng dẫn học sinh tự học” mà giáo dục đào tạo có hướng triển khai Đây phương pháp không nhiều nước giới, mang lại nhiều thành công lĩnh vực giáo dục họ Mặt khác thời gian gần chương trình cải cách giáo dục có xu hướng thay đổi ngơn ngữ lập trình pascal việc giảng dạy môn tin học lớp 11 ngôn ngữ lập trình khác Pythol, C++, … để khơng phù hợp với thời đại mà giúp học sinh dễ tiếp cận ứng dụng Trong loại ngơn ngữ C++ lựa chọn hay Ngơn ngữ lập trình C++ có 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ú C++ ngơn ngữ lập trình dễ hiểu dễ sử dụng, có tính phổ biến, tính đa hình tính di động (portable) cao Một chương trình C++ gồm nhiều hàm hàm rời nhau, ngôn ngữ linh động cú pháp, chấp nhận nhiều cách thể chương trình, mạnh xử lý liệu số, văn bản, sở liệu… Nó ngơn ngữ mà nhiều sở giáo dục nhiều công ty lập trình giới sử dụng Một phương pháp hay ngơn ngữ lập trình phù hợp lí để tơi chọn hướng nghiên cứu làm đề tài sáng kiến kinh nghiệm học liệu kiểu mảng chiều chương trình Tin học lớp 11 với tên “Sử dụng ngôn ngữ c++ kết hợp đổi phương pháp giảng dạy kiểu mảng chiều” 1.2 Mục đích nghiên cứu Đề tài nghiên cứu nhằm mục đích giúp em chủ động lĩnh hội tri thức, rèn khả họat động theo nhóm khả tự học để từ thúc đẩy niềm đam mê học tập, hứng thú với môn học, giúp em có nhìn khác môn tin học đặc biệt đem lại hiệu giáo dục cao Giúp em tiếp cận sớm với ngơn ngữ lập trình dễ học, dễ dùng mà có tính phổ dụng cao Đề tài cịn giúp giáo viên có thêm tài liệu để giảng dạy môn tin học 11 theo hướng mà nước ta triển khai Giúp giáo viên có nhìn tích cực vấn đề thay sách, chuyển đổi ngơn ngữ lập trình ngồi đặc tính vượt trội C++ tương đồng với Pascal nên dễ để giáo viên chuyển đổi ngôn ngữ giảng dạy cho cho học sinh mà không tốn nhiều thời gian công sức 1.3 Đối tượng nghiên cứu Đề tài nghiên cứu vấn đề tự học học theo nhóm học sinh khối 11 trường THPT Hoằng Hóa 1.4 Phương pháp nghiên cứu + Kết hợp thực tiễn giáo dục trường THPT HOẰNG HĨA + Có tham khảo tài liệu ngơn ngữ lập trình C++, Sách giáo khoa (tài liệu ngôn ngữ C++), sách giáo viên + Tham khảo tài liệu tập huấn “Phương pháp kĩ thuật tổ chức hoạt động học theo nhóm hướng dẫn học sinh tự học” + Tham khảo tài ngơn ngữ C++ + Tìm hiểu kĩ lưỡng học, tổng hợp kết có việc xây dựng học theo tiêu chí phát huy tính chủ động sáng tạo học sinh + So sánh giải pháp cũ thường làm với giải pháp để có kế thừa phát huy + Trao đổi nhóm trao đổi với đồng nghiệp để bổ sung, hoàn thiện tiết dạy; trao đổi với học sinh, lắng nghe ý kiến từ phía học sinh + Dự giờ, thăm lớp, tích luỹ kinh nghiệm thực tế Nội dung sáng kiến kinh nghiệm 2.1 Cơ sở lí luận sáng kiến kinh nghiệm - Đối với em học sinh bậc THPT mơn Tin học cịn mẻ khó để em tiếp cận cách tốt nhất, đặc biệt chương trình Tin học lớp 11 Vì cần phải tạo hứng thú học tập em học sinh Bởi có hứng thú, say mê nghiên cứu, học tập thì việc lĩnh hội tri thức trở nên dễ dàng hơn; ngược lại, nắm bắt vấn đề, tức hiểu người học lại có thêm hứng thú để học Việc sử dụng ngơn ngữ lập trình phù hợp yếu tố quan trọng tiên cho vấn đề C++ giải pháp hay - Nhiều chương trình Tin học 11 thực gây nhiều khó khăn cho giáo viên lẫn học sinh việc truyền thụ lĩnh hội tri thức Và viết thể phần cách truyền đạt kiến thức cho học sinh kiểu liệu có tên kiểu mảng chiều thơng qua phương pháp học nhóm tự học 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm - Đại phận học sinh coi nhẹ môn, coi môn phụ nên không hứng thú với môn học, chưa đầu tư nhiều thời gian cơng sức nên giáo viên khó khăn việc truyền đạt kiến thức, đổi phương pháp dạy học - Chất lượng học sinh chưa cao chưa đồng Lớp mũi nhọn tiếp thu tốt, lớp khác tiếp thu cịn chậm - Các em học sinh quen với cách dạy truyền thống ỉ lại cho giáo viên, không chủ động lĩnh hội tri thức - Môn học mẻ khó - Kiến thức có liên quan nhiều đến tốn học nên u cầu học sinh phải có tư tốt 2.3 Các sáng kiến kinh nghiệm giải pháp sử dụng để giải vấn đề Tơi chia lớp thành nhóm với nhiệm vụ khác thực theo hoạt động xuyên suốt tiến trình dạy học Các em tự làm việc, trả lời phiếu câu hỏi, tự trình bày tự đưa câu hỏi cho hoạt động Tiến trình dạy học 11: Kiểu mảng chiều Tiết 1: Hoạt động khởi động hoạt động hình thành kiến thức luyện tập Tiết 2,3: Hoạt động vận dụng hoạt động tìm tịi mở rộng Chuẩn kiến thức, kỹ năng: Về kiến thức: - Hiểu kiểu liệu kiểu mảng chiều Biết loại biến có số - Hiểu cấu trúc tạo kiểu mảng chiều cách khai báo biến kiểu mảng chiều Về kỹ năng: - Tạo kiểu mảng chiều - Khai báo sử dụng biến mảng chiều ngôn ngữ lập trình C++ để giải số toán cụ thể Về thái độ: - Học sinh hiểu hứng thú với học - Tự giác, tích cực, chủ động giải tập - Tiếp tục xây dựng lịng ham thích lập trình, nhằm giải tốn máy tính - Tiếp tục hình thành xây dựng phẩm chất cần thiết người lập trình như: ý thức chọn xây dựng kiểu liệu thể đối tượng thực tế Phương pháp phương tiện dạy học: - Dạy học theo quan điểm hoạt động - Sử dụng máy tính, máy chiếu, slide giảng, Sách giáo khoa (tài liệu ngôn ngữ C++), bảng, phiếu câu hỏi A KHỞI ĐỘNG Hoạt động 1: Kiểm tra cũ (1) Mục tiêu: Kiểm tra kiến thức học trước câu lệnh rẽ nhánh “If” câu lệnh lặp “For” nhằm đáp ứng lượng kiến thức cần thiết để giải tốn ví dụ hoạt động (2) Phương pháp/Kĩ thuật: Vấn đáp (3) Hình thức tổ chức hoạt động: Thảo luận nhóm (4) Phương tiện dạy học: Sách giáo khoa (tài liệu ngơn ngữ C++), máy tính, máy chiếu (5) Sản phẩm: Học sinh hiểu vận dụng cấu trúc rẽ nhánh cấu trúc lặp để giải tình cụ thể (mức vận dụng cao) Nội dung hoạt động Trong ngơn ngữ lập trình C++, đoạn chương trình sau cho kết gì? T=0; A Tính tổng bình phương số nguyên số lẻ từ For (i=1; itb) dem=dem+1; //kiểm tra ngày thứ (8) Có câu lệnh (9) Các câu lệnh tương tự (10) Nếu tốn xử lí với số ngày tháng phải cần 31 biến, năm 366 biến (11) Có 31 366 câu lệnh đếm số ngày thõa mãn điều kiện tốn (12) Chương trình gặp khó khăn sau: + Khai báo nhiều + Chương trình dài nhiều câu lệnh (13) Các biến kiểu liệu với nhau, nhiều lệnh tương tự Giáo viên chiếu chương trình mẫu chạy C++ không dùng kiểu mảng có dùng kiểu mảng Giáo viên nhận xét Để khắc phục hạn chế trên, người ta thường ghép chung biến thành dãy đặt cho chung tên đánh cho phần tử số Cách làm tạo nên kiểu liệu có tên kiểu mảng chiều Đó câu trả lời cho câu hỏi “Tại ta phải sử dụng kiểu mảng chiều” Và học hôm tìm hiểu kiểu liệu B HÌNH THÀNH KIẾN THỨC Hoạt động 3: Tìm hiểu kiểu mảng chiều (1) Mục tiêu: Học sinh hiểu kiểu mảng chiều (2) Phương pháp/Kĩ thuật: Vấn đáp (3) Hình thức tổ chức hoạt động: Thảo luận nhóm + Cá nhân (4) Phương tiện dạy học: Sách giáo khoa (tài liệu ngơn ngữ C++), máy tính, máy chiếu, phiếu câu hỏi (5) Sản phẩm: Học sinh trả lời phiếu câu hỏi giáo viên đưa từ giúp em hiểu kiểu mảng chiều yếu tố cần xác định kiểu mảng chiều (Mức độ biết) Nội dung hoạt động Kiểu mảng chiều Định nghĩa: Mảng chiều dãy hữu hạn phần tử kiểu Các phần tử mảng đặt chung tên phần tử có số Chỉ số phần tử đánh số (Trích tài liệu Trịnh Hồng Nam tài liệu mạng) Các yêu cần xác định kiểu mảng chiều: + Tên kiểu mảng chiều + Số lượng phần tử + Kiểu liệu phần tử + Cách khai báo biến mảng + Cách tham chiếu đến phần tử Ví dụ: Chỉ số 27 26 28 29.5 28.5 30 25 Nhietdo + Tên mảng: nhietdo + Số lượng phần tử: + Kiểu liệu phần tử: float (số thực) + Phần tử thứ mang giá trị là: 30 PHIẾU CÂU HỎI (1) Số lượng phần tử mảng chiều hữu hạn hay vô hạn? (2) Kiểu liệu phần tử mảng chiều nào? (Có kiểu giống hay khác nhau?) (3) Một dãy phần tử gọi gì? (4) Mảng chiều gì? PHIẾU CÂU HỎI (1) Mảng phẩn tử cần đặt tên khơng? (2) Các phần tử mảng có tên nào? (3) Làm để phân biệt phần tử mảng ? (Thơng qua gì?) (4) Khi tham gia vào chương trình biến kiểu mảng có cần khai báo khơng? (5) Hãy xác định tên mảng, số lượng phần tử, kiểu liệu phần tử, giá trị phần tử thứ ví dụ cho (6) Hãy tự đặt câu hỏi cho nội dung này? Giáo viên cho học sinh dán phiếu trả lời lên bảng cho học sinh thảo luận phản biện lẫn Giáo viên xác lại câu trả lời Học sinh sau: PHIẾU CÂU HỎI (1) Số lượng phần tử mảng chiều hữu hạn (2) Các phần tử mảng chiều có kiểu liệu (3) Gọi mảng chiều (4) Mảng chiều dãy hữu hạn phần tử kiểu PHIẾU CÂU HỎI (1) Mảng đặt tên (2) Các phần tử mảng có chung tên tên mảng (3) Mỗi phần tử có số phân biệt thơng qua số (4) Cũng giống biến khác, tham gia vào chương trình biến kiểu mảng phải khai báo (5) + Tên mảng: nhietdo + Số lượng phần tử: + Kiểu liệu phần tử: float (số thực) + Phần tử thứ 30 (6) Giáo viên nhóm xác lại câu hỏi câu trả lời nhóm Từ hoạt động giáo viên học sinh chuẩn hóa hồn thành nội dung hoạt động, tóm gọn nhấn mạnh lại nội dung kiến thức mà học sinh cần lĩnh hội Hoạt động 4: Tìm hiểu cách khai báo biến cách tham chiếu đến phần tử mảng chiều (1) Mục tiêu: Học sinh nắm cách khai báo biến mảng chiều, cách tham chiếu đến phần tử mảng chiều (2) Phương pháp/Kĩ thuật: Thuyết trình (3) Hình thức tổ chức hoạt động: Thảo luận nhóm + Cá nhân (4) Phương tiện dạy học: Sách giáo khoa (tài liệu ngơn ngữ C++), máy tính, máy chiếu, phiếu câu hỏi, chương trình mẫu (5) Sản phẩm: Học sinh giao nhiệm vụ tìm hiểu cú pháp khai báo biến mảng chiều từ giúp em nắm cách khai báo biến mảng chiều cách tham chiếu đến phần tử mảng chiều (mức độ hiểu) Nội dung hoạt động Quan sát chương trình có dùng mảng chiều tốn ví dụ a Khai báo biến mảng chiều: Kiểu_dữ_liệu> Tên_biến_mảng [ số_phần_tử] ; (Trích tài liệu Nguyễn Thanh Tiên – Nguyễn Hải Lộc – ĐHSPP Huế) Ví dụ: Khai báo a gồm năm phần tử, phần tử số nguyên: int a [5]; Kiểu_dữ_liệu Tên_biến_mảng Tổng số_phần_tử Trong đó: Kiểu liệu: kiểu liệu chuẩn Tên biến mảng: người lập trình đặt Chỉ số phần tử đánh số từ “0” đến “số phần tử -1” Số phần tử bên cặp ngoặc [] phải giá trị Ví dụ 1: float nhietdo[7]; PHIẾU CÂU HỎI (1) Có biến mảng? (2) Tên biến mảng gì? (3) Chỉ số tăng từ số đầu đến số cuối (4) Giá trị số đầu số cuối bao nhiêu? (5) Mỗi phần tử mảng có kiểu liệu gì? Giáo viên cho nhóm lên dán phiếu trả lời gọi học sinh nhóm trả lời cho học sinh phản biện Giáo viên xác lại câu trả lời theo phiếu câu hỏi học sinh (1) Có biến mảng (2) Tên biến mảng: nhietdo (3) Chỉ số tăng lên đơn vị số nguyên (4) Chỉ số đầu 0, số cuối 10 (5) Mỗi phần tử mảng có kiểu liệu float (số thực) Ví dụ 2: char m,b[11] ; int c[5]; PHIẾU CÂU HỎI (1) Có biến mảng? Đó biến nào? (2) Chỉ số đầu số cuối mảng? (3) Kiểu liệu phần tử mảng (4) Mỗi mảng có phần tử? Phiếu trả lời dán lên bảng Cho học sinh thảo luận phản biện Giáo viên xác lại câu trả lời theo phiếu câu hỏi học sinh (1) Có biến mảng c b (2) Biến mảng b có số đầu 0, số cuối 10 Biến mảng c có số đầu 0, số cuối (3) Kiểu liệu phần tử mảng b char; mảng c int (4) Mảng b có 11 phần tử, mảng c có phần tử PHIẾU CÂU HỎI (1) Khai báo biến mảng cho toán: Cho dãy a gồm nphần tử (n cho kết khơng mong muốn (có thể gây chết chương trình) Giáo viên trình chiếu chương trình ngơn ngữ C++ ví dụ nhiệt độ phát phiếu câu hỏi cho nhóm thảo luận trả lời PHIẾU CÂU HỎI (1) Quan sát chương trình câu lệnh khai báo biến cho nhiệt độ ngày (2) Cách truy xuất đến phần tử mảng chiều (3) Các câu lệnh việc sử dụng cách tham chiếu đến phần tử mảng (4) Hãy tự đặt câu hỏi trắc nghiệm cho nội dung Giáo viên xác lại câu trả lời Học sinh sau: (1) Float nhietdo[7]; (2) Tên biến mảng[Chỉ số] (3) Cin>>nhietdo[i]; Tong=Tong+nhietdo[i]; If (nhietdo[i]>trung_binh) (4) Giáo viên nhóm xác lại câu hỏi câu trả lời Hoạt động 5: Rèn luyện kĩ sử dụng kiểu mảng chiều (1) Mục tiêu: Học sinh nắm số kĩ làm việc với mảng chiều (2) Phương pháp/Kĩ thuật: Thuyết trình + Rèn tư phân tích, tổng hợp (3) Hình thức tổ chức hoạt động: Thảo luận nhóm + Cá nhân (4) Phương tiện dạy học: Sách giáo khoa (tài liệu ngôn ngữ C++), máy tính, máy chiếu, chương trình mẫu (5) Sản phẩm: Học sinh có kĩ thao tác với mảng chiều (mức độ hiểu) Nội dung hoạt động Thao tác với mảng chiều: 12 + Duyệt mảng chiều: Dùng cấu trúc lặp For , While , Do - While để duyệt phần tử mảng + Nhập liệu: For (Biến đếm=0; Biến đếm