SKKN Phương pháp dạy học chương trình con nhằm gây hứng thú và nâng cao kết quả học tập môn Tin học

SKKN Phương pháp dạy học chương trình con nhằm gây hứng thú và nâng cao kết quả học tập môn Tin học

Ngày nay, trên thế giới đang diễn ra quá trình tin học hoá trên nhiều lĩnh vực hoạt động của xã hội loài người và đem lại nhiều hiệu quả to lớn. Việc sử dụng máy tính không còn chỉ bó hẹp trong viện nghiên cứu, các trường đại học, các trung tâm máy tính mà còn mở rộng ra mọi cơ quan, tổ chức kinh tế,. và trong các gia đình. Song song với quá trình trên, việc giảng dạy Tin học trong các trường đại học, THPT cũng được đẩy mạnh đi đôi với việc tăng cường trang bị máy vi tính. Đảng và Nhà nước ta đã nhận thấy được tầm quan trọng của ngành Tin học và đã đưa môn học này vào trường phổ thông như những môn học khác bắt đầu từ năm học 2006-2007.

Trong chương trình Tin học ở nhà trường THPT, ngôn ngữ lập trình Pascal lớp 11 là một nội dung quan trọng. Bởi vì, nó là kiến thức nền móng giúp học sinh hình thành tư duy lập trình để sử dụng cho các bậc học cao hơn. Turbo Pascal là ngôn ngữ lập trình có cấu trúc, nó được dùng phổ biến ở nước ta hiện nay trong công tác giảng dạy, lập trình tính toán, đồ họa. Turbo Pascal được dùng trong chương trình giảng dạy Tin học ở hầu hết các trường đại học, cao đẳng, trung học phổ thông và nó được mệnh danh là “ngôn ngữ học đường”.

 

doc 21 trang thuychi01 7561
Bạn đang xem 20 trang mẫu của tài liệu "SKKN Phương pháp dạy học chương trình con nhằm gây hứng thú và nâng cao kết quả học tập môn Tin học", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
MỤC LỤC
I. MỞ ĐẦU
1.1. LÝ DO CHỌN ĐỀ TÀI
Ngày nay, trên thế giới đang diễn ra quá trình tin học hoá trên nhiều lĩnh vực hoạt động của xã hội loài người và đem lại nhiều hiệu quả to lớn. Việc sử dụng máy tính không còn chỉ bó hẹp trong viện nghiên cứu, các trường đại học, các trung tâm máy tính mà còn mở rộng ra mọi cơ quan, tổ chức kinh tế,.. và trong các gia đình. Song song với quá trình trên, việc giảng dạy Tin học trong các trường đại học, THPT cũng được đẩy mạnh đi đôi với việc tăng cường trang bị máy vi tính. Đảng và Nhà nước ta đã nhận thấy được tầm quan trọng của ngành Tin học và đã đưa môn học này vào trường phổ thông như những môn học khác bắt đầu từ năm học 2006-2007. 
Trong chương trình Tin học ở nhà trường THPT, ngôn ngữ lập trình Pascal lớp 11 là một nội dung quan trọng. Bởi vì, nó là kiến thức nền móng giúp học sinh hình thành tư duy lập trình để sử dụng cho các bậc học cao hơn. Turbo Pascal là ngôn ngữ lập trình có cấu trúc, nó được dùng phổ biến ở nước ta hiện nay trong công tác giảng dạy, lập trình tính toán, đồ họa. Turbo Pascal được dùng trong chương trình giảng dạy Tin học ở hầu hết các trường đại học, cao đẳng, trung học phổ thông và nó được mệnh danh là “ngôn ngữ học đường”.
Xuất phát từ thực tiễn giảng dạy tại trường THPT Quảng Xương 3 tôi thấy rằng, để đạt hiệu quả cao trong mỗi phần học, tiết học cần có cách thiết kế bài giảng cho phù hợp với nội dung kiến thức, phương pháp, phương tiện dạy học phải phù hợp với từng đối tượng học sinh. Để qua mỗi phần học, tiết học học sinh thích thú với kiến thức mới, qua đó hiểu được kiến thức đã học trên lớp, đồng thời học sinh thấy được tầm quan trọng của vấn đề và việc ứng dụng của kiến thức trước hết để đáp ứng những yêu cầu của môn học, sau đó là việc ứng dụng của nó vào các công việc thực tiễn trong đời sống xã hội (nếu có). Với kinh nghiệm được đúc rút trong quá trình giảng dạy tại trường các năm qua tôi xin đưa ra một đề tài nhỏ “Phương pháp dạy học chương trình con nhằm gây hứng thú và nâng cao kết quả học tập môn Tin học” nằm trong chương IV - chương trình tin học 11 nhằm giúp các em học sinh nói chung và học sinh trường THPT Quảng Xương III nói riêng hiểu rõ hơn về chương trình con, phân biệt và biết cách sử dụng 2 loại chương trình con trong các chương trình chính. Giúp các em có khả năng tư duy lập trình và học tốt bộ môn Pascal.
1.2. MỤC ĐÍCH NGHIÊN CỨU
Nâng cao hiệu quả dạy học của giáo viên và tiếp thu kiến thức trong quá trình học tập của học sinh đối với môn học đòi hỏi tư duy sáng tạo như lập trình pascal, đặc biệt là phần chương trình con.
Tạo động cơ cho học sinh ý thức về ý nghĩa của các hoạt động khi sử dụng chương trình con trong công việc lập trình. Từ đó, học sinh có thể liên hệ, vận dụng sáng tạo vào giải quyết các bài toán lập trình và các tình huống thực tế nhằm góp phần hình thành và phát triển năng lực trí tuệ chung cho học sinh THPT.
Khi lập trình, học sinh cần hình dung được chương trình thường có những đoạn chương trình hay phép tính lặp lại nhiều lần. Nếu mỗi lần lặp lại, ta phải viết những đoạn lệnh như nhau thì chương trình trở nên dài dòng, rối rắm và mất thời gian vô ích. Để giải quyết những trường hợp như vậy, Pascal cho phép tạo ra các module, mỗi module mang một đoạn chương trình gọi là chương trình con. Mỗi chương trình con sẽ mang một tên khác nhau. Một module chỉ cần viết một lần và sau đó có thể truy xuất nó nhiều lần, bất kỳ nơi nào trong chương trình chính. Khi cần thiết, ta chỉ việc gọi tên chương trình con đó ra để thi hành lệnh.
1.3. ĐỐI TƯỢNG NGHIÊN CỨU
	- Học sinh khối 11 qua các năm của trường THPT Quảng Xương 3
	- Nghiên cứu tình hình dạy và học tin học ở trường THPT hiện nay. Trao đổi, tìm hiểu kinh nghiệm của giáo viên phổ thông, tiếp cận học sinh khi học ngôn ngữ lập trình Pascal về năng lực và trí tuệ.
	- Nghiên cứu những cơ sở về lí luận dạy học
	- Áp dụng vào thực tiễn nhằm rèn luyện các thao tác tư duy, hình thành và phát triển tư duy logic, suy đoán trừu tượng nhằm giúp các em giải bài tập Pascal
	- Đưa ra các phương pháp động cơ trong dạy học, xây dựng hệ thống bài tập có chuyên đề cụ thể để học sinh dễ tiếp cận bài học.	
1.4. PHƯƠNG PHÁP NGHIÊN CỨU
- Phương pháp phân tích
- Phương pháp so sánh, đối chiếu
- Phương pháp thống kê
- Phương pháp thực nghiệm, đối chứng
- Phương pháp tổng hợp
- Kết hợp thực tiễn giáo dục ở trường THPT Quảng Xương III .
- Có tham khảo các tài liệu về ngôn ngữ lập trình Pascal và tài liệu về sáng kiến kinh nghiệm.
II. NỘI DUNG
2.1. CƠ SỞ LÍ LUẬN
Nội dung nghiên cứu này có nhiều phần, trong phạm vi nghiên cứu của chương này ta cần làm rõ các vấn đề sau:
- Chương trình con được viết dưới hai dạng: thủ tục(procedure) và hàm (function). 
- So sánh cấu trúc của 2 kiểu chương trình con này thì tương tự với nhau, mặc dầu cách truy xuất của chúng có khác nhau và cách trao đổi thông tin trong mỗi kiểu cũng có điểm khác nhau. Hàm (function) trả lại một giá trị kết quả vô hướngthông qua tên hàm và hàm được sử dụng trong biểu thức. 
- Liên hệ một số hàm và thủ tục chuẩn đã học: 
+ Hàm chuẩn, như hàm sin(x) mà chúng ta đã biết trong chương trước có thể được xem như một chương trình con kiểu function với tên là sin và tham số là x. 
+ Thủ tục (procedure) không trả lại kết quảthông qua tên của nó, do vậy, ta không thể viết các thủ tục trong biểu thức. Các lệnh Writeln, Readln trong chương trước được xem như các thủ tục chuẩn.
- Một chương trình có chứa chương trình con có 3 khối:
- Khối khai báo
- Khối chương trình con
- Khối chương trình chính
Để thực hiện những mục tiêu trên, yêu cầu học sinh cần nắm vững một số khái niệm: biến toàn cục, biến cục bộ, tham số thực sự, tham số hình thức, lời gọi chương trình con
2.2. THỰC TRẠNG VẤN ĐỀ
Từ thực tế giảng dạy của bản thân và qua dự giờ một số tiết dạy của đồng nghiệp tôi thấy, hầu hết học sinh đang còn mơ hồ về việc sử dụng chương trình con trong các chương trình chính. Học sinh còn lúng túng khi lựa chọn chương trình con là hàm hay thủ tục, nhầm lẫn giữa cách khai báo, lời gọi hàm và thủ tục. Vì vậy với đề tài này tôi nêu ra một số chú ý khi dạy học chương trình con cho học sinh nhằm giúp học sinh hiểu rõ hơn về chương trình con, không còn lúng túng khi sử dụng chương trình con trong các chương trình chính.
 2.3. BIỆN PHÁP DẠY HỌC CỤ THỂ
- Khi dạy về chương trình con giáo viên cần lưu ý những kiến thức sau:
1. Một số khái niệm về biến
a. Biến toàn cục: Còn được gọi là biến chung, là biến được khai báo ở đầu chương trình, nó được sử dụng bên trong chương trình chính và cả bên trong chương trình con. Biến toàn cục sẽ tồn tại trong suốt quá trình thực hiện chương trình.
b. Biến cục bộ: Còn được gọi là biến riêng, là biến được khai báo ở đầu chương trình con, và nó chỉ được sử dụng bên trong thân chương trình con hoặc bên trong thân chương trình con khác nằm bên trong nó (các chương trình con lồng nhau). Biến cục bộ chỉ tồn tại khi chương trình con đang hoạt động, nghĩa là biến cục bộ sẽ được cấp phát bộ nhớ khi chương trình con được gọi để thi hành, và nó sẽ được giải phóng ngay sau khi chương trình con kết thúc.
c. Tham số thực sự là một tham số mà nó có thể là một biến toàn cục, một biểu thức hoặc một giá trị số (cũng có thể biến cục bộ khi sử dụng chương trình con lồng nhau) mà ta dùng chúng khi truyền giá trị cho các tham số hình thức tương ứng của chương trình con.
d. Tham số hình thức là các biến được khai báo ngay sau tên chương trình con, nó dùng để nhận giá trị của các tham số thực truyền đến. Tham số hình thức cũng là một biến cục bộ, ta có thể xem nó như là các đối số của hàm toán học.
2. Lời gọi chương trình con
Để chương trình con được thi hành, ta phải có lời gọi đến chương trình con, lời gọi chương trình con thông qua tên chương trình con và danh sách các tham số tương ứng (nếu có). Các qui tắc của lời gọi chương trình con:
- Trong thân chương trình chính hoặc thân chương trình con, ta chỉ có thể gọi tới các chương trình con trực thuộc nó. 
- Trong chương trình con, ta có thể gọi các chương trình con ngang cấp đã được thiết lập trước đó.
a. Thủ tục (Procedure):
Thủ tục là một đoạn cấu trúc chương trình được chứa bên trong chương trình Pascal như là một chương trình con. Thủ tục được đặt tên và có thể chứa danh sách tham số hình thức. Các tham số này phải được đặt trong dấu ngoặc đơn ( ). Ta có thể truy xuất thủ tục bằng cách gọi tên của thủ tục. Chương trình sẽ tự động truy xuất thủ tục đúng tên đã gọi và thực hiện các lệnh chứa trong thủ tục đó. Sau khi thực hiện thủ tục xong, chương trình sẽ trở lại ngay lập tức sau vị trí câu lệnh gọi thủ tục đó.
Có 2 loại thủ tục: 
+ Thủ tục không tham số 
+ Thủ tục có tham số.
* Cấu trúc của thủ tục không tham số
PROCEDURE ;
{ Các khai báo hằng, biến, kiểu cục bộ... }
BEGIN
{ ... các lệnh trong nội bộ thủ tục ... }
END ;
Ví dụ 1: Tìm số lớn nhất trong 3 số nguyên được nhập từ bàn phím
Program VI_DU; 
Var 	a, b, c : integer ;
Procedure So_LN; 
Var max : integer ;
Begin
If a > b then max := a else max := b ;
if c > max then max := c ;
Writeln ( ‘ So lon nhat la ‘, max ) ;
end;
BEGIN 
Writeln ( ‘Nhap 3 so nguyen: ‘ ) ; Readln (a, b, c ) ;
So_LN ;
Readln;
END. 
Trong chương trình trên, thủ tục So_LN được khai báo trước khi nó được truy xuất, các biến a, b, c được khai báo ở phần khai báo của chương trình chính và biến max được định nghĩa bên trong thủ tục. Điều này cho ta thấy trong chương trình con có thể không cần khai báo biến mà có thể sử dụng biến của chương trình chính.
* Cấu trúc của thủ tục có tham số 
PROCEDURE ();
{ Các khai báo hằng, biến, kiểu cục bộ ... }
BEGIN
{ ... các lệnh trong nội bộ thủ tục ... }
END;
Khi viết một thủ tục, nếu có các tham số cần thiết, ta phải khai báo nó (kiểu, số lượng, tính chất, ...). Các tham số này gọi là tham số hình thức.
Một thủ tục có thể có 1 hoặc nhiều tham số hình thức. Khi các tham số hình thức có cùng một kiểu thì ta viết chúng cách nhau bởi dấu phẩy (,). Trường hợp các kiểu của chúng khác nhau hoặc giữa khai báo tham số truyền bằng tham biến và truyền bằng tham trị (sẽ học ở phần sau) thì ta phải viết cách nhau bằng dấu chấm phẩy (;).
Ví dụ 2: Tính giai thừa của một số 
Program Tinh_Giai_thua ;
Var 	n : integer ; gt : real ;
Procedure giaithua (m : integer );
Var i : integer ;
Begin
gt := 1 ;
For i := 1 to m do gt := gt * i ;
end;	
BEGIN
Write(‘Nhap so nguyen n (0 <= n < 33) = ‘ ) ; Readln (n);
If n>=0 then
Begin
giaithua (n);
Writeln (‘Giai thua cua ‘, n, ‘ la: ‘, gt: 10 : 0) ;
End
Else Writeln( ‘ khong tinh duoc giai thua!‘ ) ;
Readln;
END.
 	Trong chương trình trên m là các tham số hình thức của thủ tục giaithua. Khi gọi thủ tục giaithua(n) thì tham số thực sự n được truyền tương ứng cho tham số hình thức m.
b. Hàm (Function) :
Hàm là một chương trình con cho ta 1 giá trị kiểu vô hướng. Hàm tương tự như thủ tục nhưng trả về một giá trị thông qua tên hàm và lời gọi hàm tham gia trong biểu thức.
Cấu trúc một hàm tự đặt gồm:
FUNCTION (): ;
{ các khai báo hằng, biến cục bộ... } 
BEGIN
{ ... các khai báo trong nội bộ hàm ... }
END ;
Trong đó:
- Tên hàm là tên tự đặt cần tuân thủ theo nguyên tắc đặt tên trong Pascal.
- Kiểu kết quả là một kiểu vô hướng, biểu diễn kết quả giá trị của hàm.
- Một hàm có thể có 1 hay nhiều tham số hình thức, khi có nhiều tham số hình thức cùng một kiểu giá trị thì ta có thể viết chúng cách nhau bằng dấu phẩy (,). Trường hợp các tham số hình thức khác kiểu thì ta viết chúng cách nhau bằng dấu chấm phẩy (;).
- Trong hàm có thể sử dụng các hằng, kiểu, biến đã được khai báo trong chương trình chính nhưng ta có thể khai báo thêm các hằng, kiểu, biến dùng riêng trong nội bộ hàm. Chú ý là phải có một biến trung gian có cùng kiểu kết quả của hàm để lưu kết quả của hàm trong quá trình tính toán để cuối cùng ta có 1 lệnh gán giá trị của biến trung gian cho tên hàm. 
Ví dụ : FUNCTION TINH (x, y : integer ; z : real ) : real ;
Đây là một hàm số có tên là TINH với 3 tham số hình thức x, y, z. Kiểu của x và y là kiểu số nguyên integer còn kiểu của z là kiểu số thực real. Hàm TINH sẽ cho kết quả kiểu số thực real.
Ví dụ 3: Bài toán tính giai thừa. 
Program giaithua;
Var a : integer ;
Function gt(n : integer):integer ;
Var heso, tic	h : integer ;
Begin
tich:= 1 ;
If n <= 1 Then gt:= 1
Else
Begin
For heso := 2 to n do
tich:= tich * heso ;
gt:= tich; 
End ;
End;
BEGIN
Write (‘ Nhap vao so nguyen duong x = ‘ ); Readln (x) ;
Writeln (‘ Voi x = ‘, x , ‘ thi giai thua se la: x ! = ‘, gt(x)) 
Readln;
END. 
Khi khai báo kiểu dữ kiệu cho các tham số hình thức trong thủ tục và hàm, ta cần phải chú ý điểm sau: Nếu kiểu dữ liệu của các tham số hình thức là các kiểu dữ liệu có cấu trúc (kiểu array, string, kiểu record,... ) thì việc khai báo kiểu dữ liệu cho các tham số hình thức nên được khai báo theo cách gián tiếp, tức là phải thông qua từ khóa TYPE.
Ví dụ : Procedure Xuat1(hoten : string[25]); 
 Procedure Xuat2(mang: array[1..10] of integer); 
Hai chương trình con Xuat1 và Xuat2 đều bị lỗi ở phần khai báo kiểu dữ liệu cho hai tham số hình thức là hoten và mang.
Để khắc phục lỗi này, ta sẽ khai báo gián tiếp một kiểu dữ liệu str25 và M10 thông qua từ khóa TYPE như sau:
TYPE
Str25=string[25]; {Str25 là một kiểu xâu có độ dài 25}
 M10=Array[1..10] of integer; {M10 là một kiểu dữ kiệu mảng có 10 phần tử 
nguyên}
Tiếp đến, dùng 2 kiểu dữ liệu mới định nghĩa Str25 và M10 để định kiểu cho các tham số hình thức hoten và mang như sau: 
Procedure Xuat1(hoten : Str25);
Procedure Xuat2(mang: M10);
3. Truyền tham số cho chương trình con
Khi truyền tham số trong Pascal, đòi hỏi phải có sự tương ứng về tên của kiểu dữ liệu của các tham số hình thức và tham số thực sự. Một số định nghĩa và qui tắc về truyền tham số trong Pascal:
- Những tham số hình thức nằm sau từ khóa VAR gọi là tham số biến. Với tham số biến, các tham số thực sự bắt buộc phải là biến chứ không được là giá trị. Khi giá trị của tham số biến thay đổi thì nó sẽ làm thay đổi giá trị của tham số thực sự tương ứng và khi ra khỏi chương trình con đó, tham số thực sự vẫn giữ giá trị đã được thay đổi đó.
- Những tham số hình thức không đứng sau từ khóa VAR gọi là tham số trị, khi đó các tham số thực sự có thể là một biến, một biểu thức, một hằng, hoặc một giá trị số. Các tham số trị nhận giá trị từ tham số thực sự khi truyền như là giá trị ban đầu, khi giá trị của tham số trị thay đổi thì nó sẽ không làm thay đổi giá trị của tham số thực sự, nghĩa là giá trị của tham số thực sự sau khi thoát khỏi chương trình con vẫn luôn bằng với giá trị của tham số thực sự trước khi truyền đến chương trình con đó. Do vậy một tham trị không bao giờ là kết quả tính toán của chương trình con.
Ví dụ 4: Viết chương trình tính lập phương.
PROGRAM Tinh_Lap_Phuong;
VAR x: integer; {x là biến toàn cục}
PROCEDURE LapPhuong(var a:integer); {a là một tham số biến}
Begin
a:=a*a*a;
End;
BEGIN
write(‘Nhập số cần tính lập phương x = ‘); readln(x);
 LapPhuong(x); {tham số thực x được truyền cho tham số biến a}
writeln(‘Lập phương của số vừa nhập = ‘, x);
Readln;
END.
Ví dụ 5: Về sự thay đổi giá trị của tham số biến và tham số giá trị
Trong chương trình dưới đây, thủ tục có hai tham số a và b: a là tham số giá trị còn b là tham số biến. Hãy xem sự thay đổi giá trị của 2 biến x và y của chương trình chính trước và sau khi gọi thủ tục thamso:
Program vidu_5;
Uses crt;
Var x,y: integer;
Procedure thamso(a: integer; var b: integer);
Begin
	a:= a + 6;
	b:= b + 8;
end;
BEGIN
	Write(‘ nhap x = ‘); readln(x);
	Write(‘ nhap y = ‘); readln(y);
	Writeln(‘gia tri hai so vua nhap la x = ‘,x:2,’ va y =’,y:2);
	Thamso(x,y);
	Writeln(‘ gia tri hai so sau khi goi thu tuc tham so la x = ‘,x:2,’ va y =’,y:2);
Readln;
END.
	Ta thấy sau khi thực hiện chương trình thì x sẽ không thay đổi giá trị còn y sẽ có giá trị thay đổi. Kết quả thực hiện chương trình như sau:
Ví dụ 6: Viết hàm tính ước chung lớn nhất của 2 số nguyên dương, tiếp đó sử dụng hàm này để xây dựng hàm tính bội số chung nhỏ nhất của hai số nguyên dương
- Hàm tính ước chung lớn nhất:
Function UCLN(a,b:integer) : integer;
Var sodu, t : integer;
Begin
	If b>a then
	Begin
	T:=b; b:=a; a:=t:
	End;
	Sodu := a mod b;
	While sodu 0 do
	 	Begin
	A:=b; b:=sodu; sodu:=a mod b;
	End;
	UCLN := b;
End;
- Hàm tính bội chung nhỏ nhất
Function BCNN (a,b : integer) : integer;
Var tg : integer;
Begin
	Tg := UCLN (a,b);
	BCNN := a*b div tg;
End;
Qua ví dụ trên ta thấy chương trình con sau có thể sử dụng lời gọi chương trình con trước cùng cấp.
4. Các bước cần làm khi viết một chương trình con
Bước 1: Đặt câu hỏi chương trình con là Procedure hay Function? 
Giải quyết:
Chương trình con là Function khi và chỉ khi thỏa mản đồng thời các yêu cầu sau:
- Nếu ta muốn nhận lại một và chỉ một kết quả mà thôi. 
- Kết quả phải là kiểu xác định (kiểu vô hướng). 
- Có cần dùng tên của Hàm để viết trong các biểu thức hay không ? 
- Nếu không thỏa mản các tinh chất trên thì chương trình con là Procedure. Ví dụ : Function BinhPhuong( x: real) : real; 
Begin 
BinhPhuong := x * x; 
End; 
(*---------------------------------------------*) 
Procedure BinhPhuong( x : real; var y: real); 
Begin 
y:=x*x; 
End. 
Xem cách tính c = a2 + b2 
+ Nếu dùng Function: c: = BinhPhuong(a) + BinhPhuong(b);
+ Nếu dùng Procedure với một biến trung gian tg: 
BinhPhuong(a,tg); c:=tg; (c:=a2) 
BinhPhuong(b,tg); c:= c+tg; (c:= a2 + b2) 
Như vậy với bài này chúng ta nên chọn chương trình con là hàm (Function) thì sẽ hợp lí và nhanh hơn.
Bước 2: Giải quyết vấn đề tham số của chương trình con.
Giải quyết : 
- Chương trình con có cần tham số không? 
- Nếu đối tượng của chương trình con là biến toàn cục thì biến này không cần đưa vào làm tham số.
- Nếu chương trình phải thực hiện với nhiều đối tượng theo cùng một qui cách ta phải khai báo tham số ở phần đầu chương trình. 
- Nếu có tham số thì loại tham số nào ? 
- Các tham số đóng vai trò cung cấp dữ liệu đầu vào sẽ là các Tham trị. 
- Các tham số là các kết quả thu lại được từ chương trình con là Tham biến.
2.4. KẾT QUẢ
1. Bằng phiếu điều tra
(1). Trước khi thực hiện: 
Năm học
Lớp
Hs hứng thú với giờ học
Hs chưa hứng thú với giờ học
2015-2016
11D1
60%
40%
2015-2016
11D2
55%
45%
(2). Sau khi thực hiện
Năm học
Lớp
Hs hứng thú với giờ học
Hs chưa hứng thú với giờ học
2016-2017
11A1
100%
0%
2016-2017
11A4
100%
0%
2. Bằng quan sát trực tiếp
Trong năm học vừa qua tôi đã áp dụng phương pháp này vào việc giảng dạy, Tôi thấy rằng học sinh hứng thú hơn trong việc lập trình. Một số học sinh có thể tự lập trình được các bài toán đơn giản. Các em đã có thể tự xác định được bài toán trong trường hợp nào dùng Hàm hay Thủ tục.
3. Kiểm tra theo hình thức tự luận
 Tôi đã cho học sinh làm bài kiểm tra thực hành trên máy tính với đề bài sau:
Viết chương trình lần lượt thực hiện các công việc sau: (sử dụng chương trình con)
Nhập 3 số thực dương a,b,c từ bàn phím
Kiểm tra 3 số trên có lập thành 3 cạnh của một tam giác không?
Tính diện tích tam giác
Tính các trung tuyến của tam giác
Kết quả bài làm của học sinh thể hiện qua bảng thống kê sau:
Lớp
Số lượng
Giỏi
Khá
Trung bình
Yếu
SL
%
SL
%
SL
%
SL
%
11A1
45
10
22.2%
25
55.6%
10
22.2%
0
0%
11A4
46
8
17.4%
25
54.3%
13
28.3%
0
0%
Kết quả trên cho thấy 100% học sinh đạt yêu cầu.
III. KẾT LUẬN VÀ KIẾN NGHỊ
3.1. Kết luận
Qua thời gian nghiên cứu và thử nghiệm tôi thấy học sinh có tiến bộ hơn trong việc lựa chọn chương trình con phù hợp cho từng bài toán. Học sinh có thể tự xây dựng chương trình chính có sử dụng chương trình con và lời gọi chương trình con với những bài toán từ đơn giản đến phức tạp hơn.
Hiện nay, ngôn ngữ lập trình Pascal đã trở thành ngôn ngữ lập trình phổ biến nhất trên thế giới sử dụng trong lĩnh vực giảng dạy. Trong quá trình giảng dạy các thầy cô có thể đưa ra các vấn đề như lập trình các game nhỏđể các em có thể chứng tỏ được khả năng của mình làm cho học sinh yêu thích môn học, ham học hỏi và sáng tạo.
3.2. Kiến

Tài liệu đính kèm:

  • docskkn_phuong_phap_day_hoc_chuong_trinh_con_nham_gay_hung_thu.doc