Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 13 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
13
Dung lượng
109 KB
Nội dung
SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ TRƯỜNG THPT NGA SƠN SÁNG KIẾN KINH NGHIỆM SỬ DỤNG MỘT SỐ BÀI TẬP ĐỂ CỦNG CỐ CÁCH SỬ DỤNG THAM BIẾN VÀ THAM TRỊ KHI VIẾT CHƯƠNG TRÌNH CON TRONG PASCAL Người thực hiện: Nguyễn Văn Hải Chức vụ: Giáo viên SKKN thuộc lĩnh vực mơn: Tin Học THANH HỐ NĂM 2018 MỤC LỤC NỘI DUNG I 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 II Nội dung sáng kiến kinh nghiệm 2.1 Cơ sở lý luận sáng kiến kinh nghiệm a Tham số hình thức b Tham số thực c Tham biến d Tham trị e Truyền tham số theo trị f Truyền tham số theo biến 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm 2.3 Các giải pháp giải vấn đề 2.3.1 Các tập tham biến tham trị a Bài tập b Bài tập c Bài tập d Bài tập 2.3.2 Truyền theo trị hay truyền theo biến 2.4 Kết thu III.Kết luận, kiến nghị 3.1 Kết luận 3.2 Kiến nghị TRANG 1 2 2 3 3 4 4 9 10 I.MỞ ĐẦU 1.1 Lí chọn đề tài Sự phát triển vũ bão khoa học công nghệ - kỹ thuật đại đặt giáo dục vào thử thách mới, nhằm đào tạo hệ tương lai vừa có phẩm chất, vừa phải có lực tiếp cận khoa học hội nhập với xu chung xã hội Hiện trường phổ thông trọng tới vấn đề Nếu trước môn Tin học chủ yếu truyền đạt cho em kiến thức lý thuyết, hàn lâm trọng tới thực hành giải tập, giúp em làm quen với lập trình máy tính, trường phổ thơng trang bị sở vật chất phục vụ dạy học: phòng máy, phòng nghe nhìn chuẩn hóa, học sinh ý thức mơn học nên tập trung hơn, Tuy nhiên, thay đổi chưa thực mang lại hiệu cao việc tiếp thu nhận thức học học sinh phần lớn học sinh chưa có điều kiện để tiếp cận với nhiều tài liệu, thời gian để làm việc với máy tính Mơn Tin học học sinh mơn khó, đặc biệt chương trình lớp 11 kiến thức lập trình đa số với nhiều học sinh khó tiếp cận Trong trình giảng dạy chương trình lớp 11 học sinh gặp nhiều khó khăn việc giải tập từ việc soạn thảo chương trình việc cho chương trình chạy được.Việc dạy học nội dung chương trình con, tham số hình thức tham biến, tham trị khái niệm trừu tượng học sinh, học sinh thường gặp khó khăn việc tiếp thu kiến thức lập trình Do để phần giúp học sinh viết sử dụng chương trình con, tơi chọn sáng kiến kinh nghiệm : “Sử dụng số tập để củng cố cách sử dụng tham biến tham trị viết chương trình pascal ” Giúp học sinh chọn tham biến tham trị sử dụng chương trình 1.2 Mục đích nghiên cứu Đưa khái niệm tham biến tham trị để qua thấy chất hai khái niệm pascal Củng cố cách viết sử dụng chương trình pascal 1.3 Đối tượng nghiên cứu - Nghiên cứu khái niệm tham biến tham trị viết chương trình pascal số tập chương trình - Thực trạng học làm tập môn Tin học học sinh khối 11 trường THPT Nga Sơn 1.4 Phương pháp nghiên cứu - Phương pháp nghiên cứu lý thuyết - Phương pháp nghiên cứu thực tiễn - Phương pháp thực nghiệm sư phạm - Phương pháp thống kê toán học II NỘI DUNG SÁNG KIẾN KINH NGHIỆM Khi học sinh học học Bài 18 ‘Ví dụ cách viết sử dụng chương trình con’ học sinh có nhiều khó khăn, nhầm lẫn việc lựa chọn cách sử dụng hàm, sử dụng thủ tục toán khác Sáng kiến kinh nghiệm giúp học sinh củng cố cách sử dụng tham biến tham trị sử dụng chương trình pascal 2.1 Cơ sở lí luận Việc sử dụng chương trình thể qua số khái niệm tham biến, tham trị, biến tồn cục, biến địa phương, tham số hình thức, tham số thực Trong sáng kiến kinh nghiệm xin trình bày phần tham biến tham trị a Tham số hình thức: Các biến khai báo cho liệu vào/ra chương trình gọi tham số hình thức[1] Trong mục 2.1 Khái niệm tham số hình thức tham khảo từ tài liệu tham khảo số b Tham số thực : Trong lời gọi chương trình con, biến thay tương ứng tham số hình thức gọi tham số thực [1] c Tham biến: Trong lời gọi chương trình tham số hình thức thay tương ứng tên biến chứa liệu gọi tham biến [1] d Tham trị: Trong lời gọi chương trình tham số hình thức thay tương ứng giá trị cụ thể gọi tham trị [1] Để phân biệt tham trị tham biến, ngơn ngữ lập trình pascal sử dụng từ khóa var để khai báo tham số biến e Truyền tham số theo trị: Việc thực truyền tham số theo trị thực qua Giá trị bên (hằng, biến, hàm, biểu thức) chép vào vùng nhớ cấp phát tương ứng với kích thước tham số Chương trình làm việc với liệu chứa theo lệnh xây dựng cho tham số tương ứng.Nếu chương trình có lệnh làm thay đổi giá trị tham số hình thức thay đổi khơng có ảnh hưởng đến giá trị biến truyền đầu vào thay đổi thực tương ứng f Truyền tham số theo biến: Việc truyền tham số theo biến thực vào địa biến truyền, nghĩa lệnh chương trình tham số hình thức lệnh biến Do truyền tham số theo trị làm thay đổi giá trị tham số hình thức thay đổi thay đổi biến truyền Trong mục 2.1 Khái niệm tham số thực sự, tham biến, tham trị tham khảo từ tài liệu tham khảo số 2.2 Thực trạng vấn đề trước áp dụng sáng kiến kinh nghiệm Mặc dù công tác dạy học môn Tin học trường phổ thông quan tâm, sở vật chất trang bị chất lượng học sinh chưa thực nâng cao Tại trường THPT Nga Sơn, phần lớn học sinh có ý thức học tập hứng thú với môn Tin học Trong năm trở lại đây, ý thức yêu cầu xã hội, điều kiện sở vật chất nâng lên nên em học sinh dành nhiều thời gian cho môn học, từ mà chất lượng học sinh nâng lên, đặc biệt lớp 10 lớp 12 Tuy nhiên, có thực tế mà đồng nghiệp tổ nhiều băn khoăn, trăn trở chất lượng học sinh khối lớp 11 chưa cao, đặc biệt tập sử dụng chương trình con, khai báo tham số hình thức tham biến tham trị nhiều học sinh lúng túng , tỉ lệ giải tốn thấp Do học sinh ngại làm tập chương trình 2.3 Các giải pháp để giải vấn đề 2.3.1 Các tập tham biến tham trị a Bài tập 12: Viết chương trình thực hốn đổi giá trị hai số nguyên a b nhập vào từ bàn phím Đối với tốn hốn đổi giá trị hai số a b học sinh tự hỏi chương trình dùng hàm hay thủ tục Giáo viên giải thích cho học sinh tốn khơng trả giá trị qua tên chương trình nên phải khai báo chương trình thủ tục Đoạn chương trình học sinh viết sau : Program baitap1; Var a,b :integer; Procedure hoan_doi(x,y: integer); Var tg:integer; Bài tập tham khảo từ tài liệu tham khảo số Begin tg:=x; x:=y; y:=tg; End; BEGIN Write('Nhap gia tri cua a va b'); read(a,b); Writeln('Gia tri cua a va b truoc hoan doi'); Writeln(a:6,b:6); Hoan_doi(a,b); Writeln('Gia tri cua a va b sau hoan doi'); Writeln(a:6,b:6); END Trong tập thủ tục hoan_doi(x,y: integer) dùng để hoán đổi giá trị hai biến nguyên x y Tuy nhiên chạy chương trình , điều khơng xảy Giá trị hai biến x y trước sau gọi thủ tục hoan_doi(x,y) không thay đổi Lỗi học sinh khai báo thủ tục hoan_doi(x,y) khai báo truyền theo trị nên giá trị biến x y không bị ảnh hưởng Nếu sửa lại việc khai báo tham số thủ tục hốn đổi truyền theo biến( thêm từ khóa Var trước tên tham số x y) chương trình cho kết mong muốn b Bài tập 22: Viết chương trình thực tối giản phân số với tử số a mẫu số b (b ≠0) Các số a b nhập vào từ bàn phím Program baitap2; Var a,b :integer; Procedure UCLN( var x,y: integer): integer; Begin Bài tập tham khảo từ tài liệu tham khảo số While (x>0) and (y>0) If x>y then x:=x mod y else y:= y mod x; UCLN:=x+y; End; BEGIN Write('Nhap gia tri cua tu so a=',a); read(a); Write('Nhap gia tri cua mau so b=',b); read(b); d:= UCLN(a,b); Writeln('Phan so toi gian', a div d, '/' ,b div d); END Chương trình đưa hình dạng tối giản phân số nhập từ bàn phím tử số mẫu số Chương trình xây dựng hàm UCLN(x,y) trả ước chung lớn hai số nguyên dương x y, dùng hàm để tính d ước chung lớn tử mẫu nhập Dạng tối giản phân số nhận cách chia lấy nguyên tử mẫu cho số d Tuy nhiên chạy chương trình bạn ln nhận kết 1/1 cho phân số Lỗi sảy hàm UCLN tổ chức truyền theo biến nên sau lời gọi UCLN(a,b) ta đồng thời giá trị d, a, b Nếu sửa lại việc khai báo truyền tham số theo trị (bỏ từ khóa Var trước tham số hình thức x ,y) chương trình cho kết c Bài tập 32: Viết chương trình thực tính tổng s=f(x)+f(x) với f(x)=x+1 , x nhập vào từ bàn phím Program baitap3; Var x:integer; Function F(var y:integer):integer; Begin Bài tập tham khảo từ tài liệu tham khảo số y:=y+1; F:=y; End; BEGIN Write('Moi nhap x'); read(x); writeln(F(x)+F(x)); END; Chương trình đơn giản với x nhập vào cách suy luận thơng thường ta nhận kết 12 Tuy nhiên chạy chương trình nhận thơng báo 13 Bây sửa lại biểu thức F(x) +F(x) biểu thức 2*F(x) ta nhận kết 12 Sự khác thật khó giải thích cho học sinh lập trình Chương trình viết thực biểu thức F(x) +F(x) , giá trị F(x) gọi hai lần Lần gọi thứ x=5 F(x)=6 , lần gọi thứ hai x=6 F(x)=7 ta nhận kết 13 Biểu thức 2*F(x) tính lần nên kết 12 Chương trình sửa lại truyền cho đối số x hàm F theo trị kết khơng khác Việc tổ chức truyền theo trị hay truyền theo biến tùy tiện dẫn đến kết khác d Bài tập 4: Program baitap4; Var a,b,c,d :integer; Procedure tong_hieu( a, b : integer; var c, d: integer); Begin c:= a-b; d:=a+b; a:=2*a; Bài tập tham khảo từ tài liệu tham khảo số End; BEGIN Write('Moi nhap a, b, c, d'); read(a,b,c,d); Tong_hieu(a,b,c,d); Write('a:6, b:6, c:6, d:6'); END; Chương trình thực với giá trị nhập vào tương ứng theo a, b, c, d 10, 3, 5, nhiều học sinh cho kết a=30, b= 3, c=7 ,d =13 thực chương trình kết hồn toàn khác Trong thủ tục tong_hieu tham số a b khai báo tham trị nên giá trị không thay đổi nên kết a=10 b=3 tham số c d khai báo tham biến nên kết thay đổi tương ứng với giá trị 13 2.3.2 Truyền theo trị hay truyền theo biến Từ tập ta rút kết luận việc truyền tham số chương trình : Nếu thân chương trình khơng có lệnh làm thay đổi giá trị tham số hình thức việc truyền tham số theo trị hay truyền theo biến không gây khác biệt kết mà chương trình mang lại Trong trường hợp chương trình có lệnh làm thay đổi giá trị tham số hình thức phải tùy vào nhiệm vụ chương trình tham số mà định truyền: Nếu chương trình có nhiệm vụ phải thay đổi tham số thực phải tổ chức truyền theo biến cho tham số Nếu tham số dùng để gửi giá trị đầu vào cho chương trình hoạt động mà khơng làm hỏng giá trị phải tổ chức truyền theo trị cho tham số 2.4 Kết thu Trong trình trao đổi, thảo luận, trình bày học sinh thể khả vận dụng, hiểu biết nên em tỏ hăng hái việc giơ tay phát biểu tranh luận Đồng thời tiết học trở nên sinh động giáo viên khơng đóng vai trò người xây dựng lý luận mà học sinh người chủ động để giải vấn đề Tiến hành giảng dạy lớp, nhận thấy sau hướng dẫn học sinh biết làm tập Từ đó, kết kiểm tra, đánh giá có thay đổi theo hướng tích cực, kết cụ thể lớp áp dụng dạy lớp đối chứng sau: Tỉ lệ (%)\Lớp Giỏi Khá Trung bình Yếu Kém 11A 11E 11C 11D (lớp dạy) 25 15 15 0 (lớp đối chứng) 14 40 12 13 (lớp dạy) 10 14 22 (lớp đối chứng) 13 23 20 III KẾT LUẬN, KIẾN NGHỊ 3.1 Kết luận Sau vận dụng vào để củng cố, hướng dẫn học sinh thực hiện, nhận thấy: - Học sinh tiếp thu tốt hơn, em làm tập, chạy chương trình tạo hứng thú học tập - Kết kiểm tra, đánh giá nâng lên Ở lớp hướng dẫn thực hiện, tỉ lệ đạt giỏi tăng lên, khơng học sinh yếu tỉ lệ thấp - Khi vận dụng vào hướng dẫn cho học sinh đòi hỏi thân phải tiếp cận nhiều tài liệu để có nguồn tri thức phong phú, điều kiện để tơi nâng cao tính tự học, nâng cao kiến thức 3.2 Kiến nghị - Đối với đồng nghiệp, cần tăng cường hướng dẫn học sinh làm nhiều tập để việc kiểm tra đánh giá học sinh việc sử dụng tập, ngơn ngữ lập trình đồng - Đối với nhà trường, quan tâm; xây dựng sở vật chất đạt chuẩn để việc giảng dạy tin học, đặc biệt thực hành thuận lợi - Đối với Sở Giáo dục, cần thường xun tập huấn chun mơn để giáo viên có hội trao đổi, học hỏi chuyên môn nghiệp vụ giáo viên trường THPT khác XÁC NHẬN CỦA THỦ TRƯỞNG ĐƠN VỊ Thanh Hóa, ngày 25 tháng năm 2018 Tôi xin cam đoan SKKN viết, khơng chép nội dung người khác Nguyễn Văn Hải 10 TÀI LIỆU THAM KHẢO [1] Sách giáo khoa tin học 11 Hồ Sĩ Đàm [2] Lập trình nâng cao ngơn ngữ pascal Nguyễn Tô Thành [3] Một số tập tham khảo Internet chủ biên chủ biên ... Sử dụng số tập để củng cố cách sử dụng tham biến tham trị viết chương trình pascal ” Giúp học sinh chọn tham biến tham trị sử dụng chương trình 1.2 Mục đích nghiên cứu Đưa khái niệm tham biến tham. .. củng cố cách sử dụng tham biến tham trị sử dụng chương trình pascal 2.1 Cơ sở lí luận Việc sử dụng chương trình thể qua số khái niệm tham biến, tham trị, biến tồn cục, biến địa phương, tham số. .. tham trị để qua thấy chất hai khái niệm pascal Củng cố cách viết sử dụng chương trình pascal 1.3 Đối tượng nghiên cứu - Nghiên cứu khái niệm tham biến tham trị viết chương trình pascal số tập chương