Hướng dẫn học sinh phân biệt và sử dụng tham biến và tham trị trong lập trình có cấu trúc thông qua nội dung bài 18 – chương VI – tin học 11 ví dụ về cách viết và sử dụng chương trình con - Pdf 44

MỤC LỤC
1. MỞ ĐẦU................................................................................................................................2
2. NỘI DUNG SÁNG KIẾN KINH NGHIỆM.........................................................................3
2.1 Cơ sở lí luận của sáng kiến kinh nghiệm..................................................................................3
2.3 Thực trạng vấn đề trước khi áp dụng sáng kiến kinh nghiệm................................................5
2.3 Các biện pháp tiến hành để giải quyết......................................................................................6
2.4Hiệu quả của sáng kiến kinh nghiệm đối với hoạt động giáo dục, với bản thân, đồng nghiệp
và nhà trường.................................................................................................................................16

3. KẾT LUẬN...........................................................................................................................17
TÀI LIỆU THAM KHẢO.......................................................................................................19

1

1


1. MỞ ĐẦU
- Lý do chọn đề tài:
Mỗi môn học đều có đặc thù riêng, môn Tin học cũng vậy. Đối với môn
Tin học, các tiết bài tập và bài tập thực hành chiếm thời lượng giảng dạy khá
nhiều. Kết quả học lý thuyết thể hiện ở năng lực giải quyết bài tập và bài tập
thực hành của các em. Tuy nhiên, đối với học sinh khối 11, việc làm quen với
lập trình dù chỉ là các bài toán đơn giản cũng còn nhiều lạ lẫm và khó khăn. Đó
là những kiến thức mới, cách tiếp cận cũng như thực hành không như những
môn học các em đã được làm quen lâu nay. Để làm được bài tập phải vận dụng
nhiều kỹ năng như: Tư duy toán học, tư duy logic ... Mà không phải tất cả học
sinh đều có tư chất và say mê đối với môn học để tìm tòi và đáp ứng được.
Đặc biệt khi giảng dạy nội dung bài 18 - chương VI: “Ví dụ về cách viết
và sử dụng chương trình con” – Tin học 11 tôi nhận thấy đa số học sinh đều gặp
khó khăn khi tìm hiểu các khái niệm trừu tượng như: Danh sách tham số, tham

thành phần, rồi căn cứ vào mục tiêu tiết học, trình độ học sinh, trang thiết bị
hiện có mà lựa chọn cho học sinh tập luyện và thực hiện một số trong những
hoạt động tiềm tàng trong nội dung cần dạy. Để học sinh có ý thức về ý nghĩa
của những hoạt động, cần tạo động cơ học tập cho học sinh, để học sinh học
bằng sự hứng thú thực sự được nảy sinh từ việc ý thức sâu sắc ý nghĩa của
nội dung bài học.
Bên cạnh đó cần phải tập luyện cho học sinh những hoạt động ăn khớp
với những tri thức phương pháp. Phải phân bậc hoạt động để tuần tự nêu cao
yêu cầu khi tình huống dạy học cho phép hoặc hạ thấp yêu cầu khi học sinh
gặp khó khăn. Hệ thống bài tập được phân bậc để học sinh luyện tập tại lớp
hoặc làm ở nhà.
Quan điểm hoạt động trong phương pháp dạy học có thể được thể hiện ở
các tư tưởng chủ đạo sau:
* Cho học sinh thực hiện và tập luyện những hoạt động và hoạt động
thành phần tương thích với nội dung và mục tiêu dạy học;
* Gợi động cơ cho các hoạt động học tập;
* Dẫn dắt học sinh kiến tạo tri thức, đặc biệt là tri thức phương pháp như
phương tiện và kết quả của hoạt động;
* Phân bậc hoạt động làm căn cứ điều khiển quá trình dạy học.
Trong các tư tưởng chủ đạo đó, tôi lựa chọn tư tưởng: "Cho học sinh
thực hiện và tập luyện những hoạt động và hoạt động thành phần tương
thích với nội dung và mục tiêu dạy học" làm cơ sở lý luận cho SKKN này.
Có thể cụ thể hóa tư tưởng như sau:
*Phát hiện những hoạt động tương thích với nội dung:
Việc phát hiện những hoạt động tương thích với nội dung căn cứ một
phần quan trọng vào sự hiểu biết về những hoạt động nhằm lĩnh hội những
dạng nội dung khác nhau.
3



tham số giá trị (tham trị).
* Tham biến: Trong lệnh gọi chương trình con, các tham số hình thức được
thay bằng các tham số thực sự tương ứng là tên các biến chứa dữ liệu ra được
gọi là các tham số biến (tham biến).
* Để phân biệt tham trị và tham biến, ngôn ngữ lập trình Pascal sử dụng từ
khóa Var để khai báo những tham số biến.

4


Hoạt động 1: Nhận biết tham trị và tham biến thông qua phần đầu chương
trình con:
Ví dụ 1: a. Procedure Hoan_doi(a,b:integer);
b. Procedure Hoan_doi(x:integer; Var y:integer);
Học sinh dễ dàng nhận biết:
Ví dụ 1.a: a,b là tham trị;
Ví dụ 1.b: x là tham trị và b là tham biến.
Hoạt động 2: Nhận biết tham trị và tham biến thông qua lệnh gọi chương
trình con:
Ví dụ 2: Với thủ tục có khai báo:
Procedure Hoan_doi(a,b:integer);
Hãy cho biết trong các lệnh gọi sau đâu là tham trị? tham biến?
a. Hoan_doi(a,b);
b. Hoan_doi(7,5);
Dựa vào khái niệm tham trị và tham biến học sinh chỉ ra được:
Ví dụ 2.a: a và b đóng vai trò là tham biến;
Ví dụ 2.b: 5 và 7 đóng vai trò làm tham trị;
2.3

Thực trạng vấn đề trước khi áp dụng sáng kiến kinh nghiệm

- Sự quan tâm và chỉ đạo kịp thời của Ban giám hiệu nhà trường.



Khó khăn:
- Chương trình con là một phần mới và khó đối với học sinh.
- Môn tin là môn học không không được học sinh đầu tư nhiều thời
gian như các môn học khác.
- Để học tốt chương trình tin học 11 học sinh phải có nền tảng tư duy
toán học.

2.3

Các biện pháp tiến hành để giải quyết

2.3.1

Sự khác nhau cơ bản của tham trị và tham biến
Ngoài sự khác nhau trong cách khai báo, trong lệnh gọi chương trình con
mà học sinh dễ dàng nhận biết thì sự khác nhau về bản chất của tham trị và tham
biến lại thực sự là một vấn đề khá phức tạp và dễ nhầm lẫn trong quá trình viết
chương trình giải quyết các bài toán. Vậy làm thế nào để học sinh nhận biết
được sự khác nhau cơ bản giữa tham trị và tham biến?
Giá trị của tham biến thay đổi còn giá trị của tham trị không thay đổi
sau khi thực hiện lời gọi chương trình con.
Bài toán 1: Quan sát kết quả thực hiện chương trình và cho biết:
a. Tham biến và tham trị sử dụng trong chương trình?
b. Đưa ra nhận xét về sự thay đổi giá trị của tham biến và tham trị
sau khi lệnh gọi thủ tục được thực hiện?
Program ThamSo;

Bên cạnh đó, khi lệnh gọi thủ tục Thamso(x,y) được thực hiện, do tham trị
là các giá trị cụ thể nên lệnh gọi lúc này có thể hiểu là Thamso(x,10). Chính vì

7


vậy giá trị của y không bị thay đổi bởi lệnh b:=5 trong thủ tục và giá trị của y
vẫn là 10.
Kết luận: Sau khi thực hiện lệnh gọi chương trình con, giá trị của tham
biến thay đổi còn giá trị của tham trị không thay đổi.
2.3.2
Chương trình con có tham số sử dụng tham biến và tham trị
như thế nào?
Bài toán 2: Quan sát chương trình và cho biết kết quả của chương
trình sau khi thực hiện? Và cho biết để nhận được kết quả phù hợp cần sử
dụng tham biến hoặc tham trị như thế nào?
Program BaiToan2;
Var a,b:integer;
Procedure Hoandoi(x,y:integer);
Var tg:integer;
Begin
tg:=x;
x:=y;
y:=tg;
End;
Begin
a:=5;b:=10;
Writeln('Truoc khi hoan doi a=',a,'

', 'b=',b);

đổi: a=5, b=10. Việc phát hiện giá trị của a,b không thay đổi sau khi thực hiện
lệnh gọi thủ tục là do “Giá trị của tham trị không thay đổi” (Kết luận của Bài
toán 1) và kết quả trên màn hình là:

Hoạt động 2.3: Chỉnh sửa lại chương trình cho phù hợp.
Rõ ràng lỗi xảy ra do thủ tục Hoandoi(x,y) sử dụng tham trị nên các giá trị
của các biến a và b không bị ảnh hưởng bởi các lệnh tráo đổi giá trị trong thủ
tục. Nếu muốn nhận được giá trị của a=10 và b=5 thì trong danh sách tham số
của chương trình con cần phải khai báo các tham số x, y là tham biến:
Procedure Hoandoi(Var x,y:integer);
Khi đó chương trình sẽ cho kết quả như mong muốn: a=10, b=5. Và trên
màn hình kết quả sẽ là:

9


Đây là một ví dụ điển hình để chỉ ra cho học sinh thấy khi nào cần sử dụng
tham trị và tham biến trong chương trình con.
Kết luận: Việc sử dụng tham trị hay tham biến cho một tham số là
không thể tuỳ tiện vì nó có thể dẫn đến những kết quả sai với yêu cầu của bài
toán. Bài toán trên đã minh hoạ các tình huống có thể xảy ra. Chương trình
cho kết quả sai khi sử dụng tham trị, nếu sửa lại việc khai báo các tham số
trong thủ tục Hoandoi là tham biến thì chương trình sẽ cho kết quả đúng với
yêu cầu của bài toán.
2.3.3 Một số bài tập đơn giản để rèn luyện kĩ năng cho học sinh trong việc
sử dụng tham trị và tham biến khi lập trình có cấu trúc
Bài toán 3: Sử dụng chương trình con để lập trình tính chu vi và diện
tích hình chữ nhật có độ dài các cạnh là a, b. Với a, b nguyên dương nhập
vào từ bàn phím.
Hướng dẫn:

CV:=(x+y)*2;
DT:=x*y;
end;
Hoạt động 2.4: Hoàn thiện chương trình
Dựa vào các hoạt động trên, học sinh sẽ tiến hành viết chương trình hoàn
chỉnh để giải quyết bài toán ban đầu:
Program BaiToan3;
Uses crt;
Var a,b,C,S:word;
Procedure Tinh(x,y:word; Var CV,DT:word);
Begin
CV:=(x+y)*2;
DT:=x*y;
end;
Begin
clrscr;
Write('Nhap a va b:');
Readln(a,b);
11


Tinh(a,b,C,S);
Writeln('Chu vi HCN la:C= ',C,'(dvcv)');
Writeln('Dien tich HCN la: S= ',S,'(dvdt)');
Readln
End.
Bài toán 4: Sử dụng chương trình con để lập trình tính tổng hai dãy
số a1, a2, a3, ..., aN và b1, b2, b3, ..., bM . Với N, M nguyên dương nhập vào từ
bàn phím (N, M


Bao gồm:
* Tham trị X là tham số tương ứng với N và M
* Tham trị C là tham số tương ứng với mảng A và B lưu trữ giá trị hai dãy
số;
* Tham biến S là tham số tương ứng lưu trữ giá trị tổng của từng dãy số;
Hoạt động 2.4: Hoàn thiện chương trình:
Dựa vào các hoạt động trên, học sinh sẽ tiến hành viết chương trình hoàn
chỉnh để giải quyết bài toán ban đầu:
Program Baitoan4;
Uses Crt;
Type KM=Array [1..250] of integer;
Var A,B:KM;
N,M:Byte;
S1,S2:longint;
Procedure Tong(X:byte;C:KM;Var S:longint);
Var i:Byte;
Begin
S:=0;
Writeln('Moi nhap day so ',X,' phan tu:');
For i:=1 to X do
Begin
Write('Nhap phan tu thu ',i,':');
Readln(C[i]);
S:=S+C[i];
End;
End;
Begin
Clrscr;

Begin
Write('Nhap phan tu thu ',i,' :');
Readln(A[i]);
If A[i]=K then KT:=True;
End;
Hoạt động 2.2: : Lựa chọn chương trình con cần sử dụng:
Bài toán này là bài toán tìm kiếm mà học sinh đã làm trong các chương học
trước. Có nhiều cách viết chương trình để giải quyết bài toán. Vì thế khi sử dụng
chương trình con cũng có thể có nhiều cách để triển khai. Ở đây tôi đề xuất cách
viết có sử dụng tham biến và tham trị trong việc sử dụng thủ tục để giải quyết
bài toán ban đầu.
Hoạt động 2.3: Hoàn thiện chương trình:
Dựa vào các hoạt động trên, học sinh sẽ tiến hành viết chương trình hoàn
chỉnh để giải quyết bài toán ban đầu:
Program Baitoan5;
14


Uses Crt;
Type KM=Array[1..250] of integer;
Var N:byte;
A:KM;
K:integer;
KT:Boolean;
Procedure Nhap(X:Byte;C:KM;Var KT:Boolean);
Var i:Byte;
Begin
KT:=False;
Writeln('Moi nhap day ',X,' phan tu:');
For i:=1 to X do

2.4 Hiệu quả của sáng kiến kinh nghiệm đối với hoạt động giáo dục, với
bản thân, đồng nghiệp và nhà trường
Năm học 2010 - 2011 là năm đầu tiên tôi được phân công giảng dạy “Tin
học 11”, vì mới ra trường kinh nghiệm chưa có nên thật khó khăn để giúp học
sinh phân biệt tham trị và tham biến trong lập trình có cấu trúc, cũng như việc
vận dụng chương trình con để giải quyết các bài toán lập trình. Tỷ lệ học sinh
hiểu bài và làm được các bài tập rất thấp, chỉ một số em khá giỏi mới hiểu bài.
Nhưng trong một số năm học gần đây, tôi đã mạnh dạn vận dụng phương pháp
giảng dạy trên, kết quả đã khác biệt hơn rất nhiều. Học sinh đã hiểu bài và làm
bài tập tốt hơn. Hơn thế nữa trong chương này khi học sinh nắm vững về
chương trình con và lập trình có cấu trúc sẽ giúp các em có thể lập trình giải
quyết các bài toán điển hình cũng như các bài toán phức tạp. Và những em sau
này muốn học sâu hơn về lĩnh vực lập trình thì đó cũng là một nền tảng vững
chắc.
Kết quả SKKN được thể hiện qua các bảng thống kê tỷ lệ bài kiểm tra
nội dung kiến thức chương VI qua các năm:
*Năm học chưa áp dụng SKKN
Năm học 2011 – 2012
STT
1
2

LỚP
11B8
11B9

Sĩ số
38
36


35
46

Tỉ lệ % trên TB
92.1
90.2

*Năm học đã áp dụng SKKN
Năm học 2012 – 2013

LỚP
11A1
11A2

Sĩ số
38
51

Năm học 2014 - 2015
16


STT
1
2

LỚP
11B3
11B4


- Số em gia đình có máy tính còn ít;
- Do môn tin là môn học không thi tốt nghiệp và thi đại học nên học sinh
không dành nhiều thời gian để học và tự nghiên cứu thêm các tài liệu ở nhà;
* Chủ quan
- Một số học sinh chưa chú ý nên dẫn đến hiện tượng cảm thấy môn học khó
và không tư duy để tìm cách vận dụng giải quyết bài tập;
- Kinh nghiệm của bản thân trong giảng dạy tin học 11 còn ít do thời lượng
tiết dạy chủ yếu là tin học 12;

17


XÁC NHẬN CỦA HIỆU TRƯỞNG

Triệu Sơn, tháng 5 năm 2016
Tôi xin cam đoan đây là SKKN của
mình viết, không sao chép nội dung
của người khác.

Nguyễn Trung Linh

18


TÀI LIỆU THAM KHẢO
1. Hồ Sĩ Đàm – Hồ Cẩm Hà - Trần Đỗ Hùng – Nguyễn Đức Nghĩa –
2.

3.
4.

NHẬN XÉT CỦA HỘI ĐỒNG KHOA HỌC NHÀ TRƯỜNG
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................

20



..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................

21




Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status