A. PHẦN MỞ ĐẦU
I. 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.
Sau ba năm giảng dạy Tin học 11 tại trường THPT Triệu Sơn I tôi nhận thấy
phần lớn các em giải quyết bài tập và bài tập thực hành còn chưa tốt, khả năng
vận dụng lý thuyết vào bài tập chưa thành thạo. Dẫn đến sự chán nản và mất đi
hứng thú, say mê đối với môn học. Từ thực tiễn đó tôi đã rút ra một số kinh
nghiệm trong khi hướng dẫn các em làm các bài tập ở chương III - Tin học 11
có hiệu quả. Từ những kinh nghiệm thực tiễn đó tôi đã xây dựng thành
“PHƯƠNG PHÁP HƯỚNG DẪN HỌC SINH LÀM BÀI TẬP CHƯƠNG III –
TIN HỌC 11”.
II. Phạm vi và đối tượng nghiên cứu
1. Phạm vi nghiên cứu: Trong đề tài này tôi chỉ xây dựng và đề xuất phương
pháp hướng dẫn học sinh làm một số bài tập trong “Chương III – Tin học 11”.
2. Đối tượng nghiên cứu: Học sinh khối 11 trường THPT Triệu Sơn I.
III. Mục đích của đề tài
Giúp học sinh yêu thích và có hứng thú khi làm bài tập trong “Chương III –
Tin học 11”. Từ đó, các em có thể hiểu vận dụng ba cấu trúc: tuần tự, rẽ nhánh
và cấu trúc lặp vào các bài tập từ đơn giản đến phức tạp.
1
B. NỘI DUNG
I. Cơ sở lý luận
Cũng như những môn học khác, việc dạy Tin học cần được thực hiện trong
hoạt động và bằng hoạt động tự giác, tích cực, chủ động và sáng tạo của người
học. Khi cần dạy một nội dung Tin học cho học sinh, người giáo viên phải biết
phân tích nội dung đó xem nó liên quan đến những hoạt động nào và một số
hoạt động trong đó lại được phân tích thành những hoạt động 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 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:
I.1 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.
Ví dụ: Khi luyện tập câu lệnh IF - THEN ta có thể ra bài tập như sau:
Cho 3 số nguyên a, b, c nhập vào từ bàn phím. Viết các câu lệnh IF -
THEN để tìm số lớn nhất trong 3 số.
Bản thân việc tìm ra số lớn nhất trong 3 số các em đã biết cách tìm trong tư
duy toán học. Tuy nhiên khi cụ thể hóa nó bằng các hoạt động tin học các em sẽ
gặp một chút khó khăn. Vấn đề ở đây các em phải nhận thức được các hoạt động
2
tương thích với việc tìm ra số lớn nhất trong 3 số đó là: câu lệnh gán và câu lệnh
IF - THEN. Cụ thể như sau:
Gán Max:=a;
Nếu Max < b thì Max:= b;
Nếu Max < c thì Max:= c;
Đoạn câu lệnh cần viết:
Max:=a;
If Max<b then Max:=b;
If Max<c then Max:=c;
Nếu các em không tìm ra được các hoạt động tương thích sẽ dễ dẫn đến việc
chỉ sử dụng mình câu lệnh IF - THEN và để tìm ra được số lớn nhất trong 3 số
sẽ gặp nhiều khó khăn khi các em lấy từng số so sánh với các số còn lại để tìm
ra số lớn nhất.
I.2 Phân tách hoạt động thành các hoạt động thành phần
Trong quá trình hoạt động, nhiều khi một hoạt động này có thể xuất hiện như
một thành phần của một hoạt động khác. Phân tách được một hoạt động thành
những hoạt động thành phần là biết được cách tiến hành hoạt động toàn bộ, nhờ
đó có thể vừa quan tâm rèn luyện cho học sinh hoạt động toàn bộ vừa chú ý cho
học sinh luyện tập tách riêng những hoạt động thành phần khó hoặc quan trọng
khi cần thiết. Khi dạy một câu lệnh cũng cần cho học sinh tiến hành tách hoạt
động toàn bộ của câu lệnh thành những hoạt động thành phần.
Ví dụ: Khi dạy về câu lệnh FOR - DO dạng tiến
For <Biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Giáo viên có thể phân tích cho học sinh thấy câu lệnh trên có thể phân tách
thành các hoạt động thành phần theo trình tự như sau:
Đầu tiên máy kiểm tra giá trị đầu không lớn hơn giá trị cuối. Nếu điều kiện
này đúng thì máy ghi nhớ giá trị cuối. Tiếp đến máy thực hiện liên tiếp ba hoạt
động sau:
* Gán giá trị đầu cho biến đếm;
* Thực hiện câu lệnh sau Do;
* Kiểm tra điều kiện ra khỏi vòng lặp, đó là giá trị đầu bằng giá trị cuối đã
ghi nhớ. Nếu điều kiện ra khỏi vòng lặp sai thì máy lại thực hiện liên tiếp ba
hoạt động sau:
- Biến đếm nhận giá trị tiếp theo giá trị hiện tại (tức là giá trị của nó
sau khi thực hiện câu lệnh sau Do).
- Thực hiện câu lệnh sau Do;
- Quay lại kiểm tra điều kiện ra khỏi vòng lặp.
Vòng lặp chỉ kết thúc khi máy quay lại kiểm tra điều kiện ra khỏi vòng lặp
mà điều kiện này đúng.
3
Bên cạnh đó, nếu trong quá trình học, học sinh gặp khó khăn khi xây dựng
thuật giải để giải một bài toán nào đó, giáo viên có thể tách riêng một hoạt động
nào đó để rồi hướng dẫn cho học sinh thực hiện hoạt động nhận dạng và tương
tự xét xem tình huống nào trước đây đã gặp trong một chương trình gần giống
hoặc tương thích với hoạt động này và cho học sinh tập luyện những hoạt động
ăn khớp với hoạt động đó.
II. Thực trạng của vấn đề
Theo định lý Bohn Jacopini: "Mọi quá trình tính toán đều có thể mô tả và
thực hiện dựa trên ba cấu trúc cơ bản là cấu trúc tuần tự, cấu trúc rẽ
nhánh và cấu trúc lặp". Ngay trong Chương III - Tin học 11 bước đầu các em
làm quen với việc lập trình bằng việc sử dụng các câu lệnh có cấu trúc, cụ thể
là hai cấu trúc cơ bản của ngôn ngữ lập trình Pascal đó là: Cấu trúc rẽ nhánh
và cấu trúc lặp. Mặc dù các ví dụ của SGK phân tích rất rõ ràng từ sơ đồ khối
hoặc liệt kê các bước, đến các chương trình cụ thể để giải quyết bài toán tuy
nhiên học sinh sẽ gặp rất nhiều khó khăn vì các bài tập chương III thực sự là
mới và phức tạp hơn nhiều so với các ví dụ mà SGK đã phân tích trước đó.
Chính vì vậy, đối với những học sinh khá và giỏi việc vận dụng lý thuyết để
làm các bài tập đã khó; đối với học sinh trung bình và yếu càng khó hơn.
Thực tế giảng dạy đặt ra vấn đề: làm thế nào để học sinh hiểu bài, có khả
năng tư duy vận dụng để giải quyết các bài tập, từ đó khơi dậy tính tích cực,
chủ động, sáng tạo và say mê tìm tòi dẫn đến yêu thích môn học là điều quan
trọng đối với mỗi giáo viên.
Bên cạnh đó, nếu sau một thời gian học sinh không biết cách vận dụng lý
thuyết vào để làm các bài tập và cảm thấy khó khăn khi giải quyết vấn đề sẽ
dẫn đến tình trạng các em thụ động trong việc tiếp thu bài giảng, không còn
hứng thú với môn học. Để giải quyết vấn đề này là không phải là đơn giản.
Do đó khi giảng dạy chương III- Tin học 11 tôi đã áp dụng SKKN của mình
với hi vọng có thể giúp học sinh vận dụng để giải quyết được các bài tập trong
chương học này.
III. Nguyên nhân
Thứ nhất, các em chỉ mới được làm quen với việc viết các chương trình đơn
giản trong chương II do đó việc viết một chương trình thực hiện các thao tác
tính toán sẽ gặp rất nhiều khó khăn;
Thứ hai, các kiến thức xây dựng thuật toán bằng sơ đồ khối và liệt kê các
bước các em học từ chương I - Tin học 10 chỉ gói gọn trong 6 tiết do đó tình
trạng quên kiến thức cũ là phổ biến;
Thứ ba, các bài tập ở chương III - Tin học 11 khá mới và phức tạp so với các
bài toán trong ví dụ ở lý thuyết do đó việc "Quy lạ về quen" trong lập trình
cũng chỉ dừng ở mức hạn chế, dẫn đến việc áp dụng các ví dụ để giải quyết
các bài tập còn gặp nhiều khó khăn;
4
+
+
=
yx
yx
z
+
+
=
yx
yx
z
+
+
=
yx
yx
z
IV. Biện pháp tiến hành để giải quyết vấn đề
1. Bài tập về cấu trúc rẽ nhánh
Bài tập 4b - SGK Tin 11 - Trang 51
Viết câu lệnh rẽ nhánh tính:
nếu điểm (x,y) thuộc hình tròn bán kính r (r>0), tâm (a,b)
trong trường hợp còn lại.
Hướng dẫn:
1.1 Phát hiện hoạt động tương thích nội dung:
* Câu lệnh gán để tính khoảng cách từ điểm (x,y) đến tâm (a,b) và tính z
trong hai trường hợp;
* Câu lệnh rẽ nhánh If - Then để xác định xem tính z theo biểu thức nào?
1.2 Phân tách thành các hoạt động:
Với nội dung của bài toán trên từ hoạt động ban đầu ta có thể chia thành hai
hoạt động như sau:
Hoạt động 1: Tính khoảng cách d của hai điểm bất kỳ khi biết tọa độ của hai
điểm lần lượt là (x,y) và (a,b);
Hoạt động 2: Viết câu lệnh rẽ nhánh tính:
nếu d<=r;
trong trường hợp còn lại.
Hoạt động 3:
Viết câu lệnh rẽ nhánh tính:
nếu điểm (x,y) thuộc hình tròn bán kính r (r>0), tâm (a,b)
trong trường hợp còn lại.
Hướng dẫn:
Hoạt động 1: Vì đây là bài toán tính khoảng cách của hai điểm khi biết tọa
độ học sinh đã được học trong môn Toán học và câu lệnh gán, biểu thức số học,
hàm bình phương, hàm căn bậc hai học sinh đã được viết nhiều trong chương II -
Tin học 11 nên việc viết câu lệnh tính d học sinh hoàn toàn viết được như sau:
d:= sqrt(sqr(x-a)+sqr(x-b));
Hoạt động 2: Với khoảng cách d tính được, học sinh có thể nêu ý tưởng thực
hiện như sau:
Nếu d<=r thì z:= abs(x)+abs(y)
5
Ngược lại thì z:= x+y;
Câu lệnh If - Then tương ứng:
If d<=r then z:= abs(x)+abs(y) else z:= x+y;
Hoạt động 3: Đoạn câu lệnh rẽ nhánh để giải quyết bài toán ban đầu:
d:= sqrt(sqr(x-a)+sqr(x-b));
If d<=r then z:= abs(x)+abs(y) else z:= x+y;
2. Bài tập về cấu trúc lặp
2.1 Bài 5a – SGK Tin học 11- Trang 51
Lập trình tính:
Y=
50
1
1
n
n
n
=
+
∑
Bài toán trên có thể được viết dưới dạng tường minh như sau:
Lập trình tính:
Y=
1 2 49 50
1 1 2 1 49 1 50 1
+ + + +
+ + + +
2.1.1 Phát hiện hoạt động tương thích nội dung
* Câu lệnh gán để khởi tạo giá trị ban đầu cho Y và tính Y;
* Câu lệnh lặp với số lần biết trước For - Do để thực hiện tính tổng Y.
2.1.2 Phân tách thành các hoạt động:
Với bài toán này, học sinh dễ dàng nhận ra đây là bài toán tính tổng và sử
dụng các hoạt động giống như các hoạt động trong bài toán 1 (SGK Tin học 11 -
Trang 42).
Hoạt động 1: Xây dựng thuật toán bằng cách liệt kê các bước để tính:
Y=
1 2 49 50
1 1 2 1 49 1 50 1
+ + + +
+ + + +
Hoạt động 2: Viết đoạn câu lệnh tính:
Y=
1 2 49 50
1 1 2 1 49 1 50 1
+ + + +
+ + + +
Hoạt động 3:
Lập trình tính:
Y=
1 2 49 50
1 1 2 1 49 1 50 1
+ + + +
+ + + +
Hướng dẫn:
Hoạt động 1: Trong hoạt động này học sinh cần phát hiện ra được những
hoạt động nhỏ cần thiết để xây dựng thuật toán. Nếu học sinh gặp khó khăn ta
6
có thể hướng các em xây dựng thuật toán dựa vào thuật toán Tong_1a(SGK
Tin học 11 - Trang 43).
Hoạt động 1.1: Xác định giá trị cần khởi tạo ban đầu cho Y và N.
Tương tự như bước 1 của thuật toán Tong_1a, học sinh sẽ xác định
được giá trị ban đầu cần khởi tạo cho Y chính là giá trị của phần tử đầu tiên, vì
vậy Y← 1/2. Khi Y=1/2 rõ ràng nhận thấy N=1, vậy giá trị cần khởi tạo ban đầu
cho N là: N← 1.
Hoạt động 1.2: Xác định số lần lặp để tính tổng Y.
Hoạt động này có thể không cần tiến hành. Tuy nhiên đối với một số
học sinh còn mơ hồ ta có thể cho học sinh tiến hành nhanh hoạt động này để có
thể xác định được giá trị đầu và giá trị cuối cho biến đếm trong câu lệnh For-Do.
Vì N tăng lần lượt từ 1 đến 50 ( tổng xichma ) nên trong tổng Y sẽ có 50 phần
tử. Vì vậy số lần lặp để tính tổng Y ở đây sẽ là 50 lần.
Hoạt động 1.3: Viết câu lệnh gán tính giá trị tổng Y.
Không ít học sinh sẽ gặp khó khăn khi xây dựng công thức tính tổng
Y. Để học sinh có thể quen dần với việc xây dựng công thức của một bài toán
tính tổng bằng cấu trúc lặp ta có thể xây dựng công thức như sau:
Lần 1: N=1
Y= N/(N+1)=1/2;
Lần 2: N=2
Y= 1/2+N/(N+1)= Y(lần 1)+N/(N+1)=Y(lần 1)+2/3;
Lần 3: N=3
Y=1/2+2/3+N/(N+1)= Y(lần 2)+N/(N+1)=Y(lần 2)+3/4;
Rõ ràng: Tổng Y (lần sau) = Tổng Y(lần trước) + N/(N+1);
Vậy câu lệnh gán tính giá trị của Y sẽ được viết như sau:
Y:=Y+N/(N+1);
Sau khi học sinh giải quyết được các hoạt động trên, ta mới tiến hành yêu
cầu học sinh xây dựng thuật toán cho bài toán. Thuật toán xây dựng tương tự
như thuật toán Tong_1a(SGK Tin học 11 - Trang 43):
Bước 1: Y← 1/2; N← 1;
Bước 2: N← N+1;
Bước 3: Nếu N>50 thì chuyển đến bước 5;
Bước 4: Y← Y+N/(N+1) rồi quay lại bước 2;
Bước 5: Đưa Y ra màn hình, rồi kết thúc.
Hoạt động 2:
Yêu cầu học sinh nêu ý tưởng tính Y (cần lưu ý cho học sinh vì giá trị
ban đầu của N=1 nên khi tham gia vào vòng lặp tính tổng Y thì giá trị của N sẽ
là 2).
Ý tưởng: Gán giá trị ban đầu cho Y;
Cho biến N tăng từ 2 đến 50 thực hiện công việc tính tổng Y;
7
Câu lệnh tương ứng:
Y:=1/2;
For N:=2 to 50 do Y:=Y+N/(N+1);
Hoạt động 3: Dựa vào hoạt động 1, hoạt động 2 vừa thực hiện ở trên học
sinh sẽ tiến hành viết chương trình để giải quyết bài toán ban đầu.
Chương trình:
Program Tong_Y;
Var Y:Real;
N :Byte;
Begin
Y:=1/2;
For N:=2 to 50 do Y:=Y+N/(N+1);
Writeln('Tong Y=',Y:6:2);
Readln;
End.
2.2 Bài tập 5b - SGK Tin học 11 - Trang 51
Lập trình tính: E(n)=
1 1 1
1
1! 2! !n
+ + + + +
Cho đến khi
6
1
2 10
!n
−
< ×
đưa giá
trị e(n) ra màn hình.
2.2.1 Phát hiện hoạt động tương thích nội dung
Trong bài tập này có thể chứa khá nhiều các hoạt động, do đó việc phát hiện
các hoạt động tương thích ngay thời điểm ban đầu là phức tạp dễ nhầm lẫn. Do đó
chỉ cần hướng học sinh nhận ra hai hoạt động tương thích:
* Câu lệnh gán để tính n! và E(n);
* Câu lệnh lặp với số lần chưa biết trước While - Do để tính E(n).
2.2.2 Phân tách thành các hoạt động
Trong bài tập này có thể phân tách hoạt động ban đầu thành các hoạt động
sau:
Hoạt động 1: Viết đoạn câu lệnh tính:
n!=1.2.3 n cho đến khi
6
1
2 10
!n
−
< ×
Hoạt động 2: Lập trình tính:
E=
1 1 1
1
1! 2! !n
+ + + + +
Cho đến khi
6
1
2 10
!n
−
< ×
đưa giá trị e(n) ra màn
hình.
Hướng dẫn:
Hoạt động 1: Với bài toán tính giai thừa học sinh đã khá quen thuộc bên
toán học. Tuy nhiên với đặc thù riêng của môn Tin học thì học sinh vẫn sẽ gặp một
8
số khó khăn khi tính. Giáo viên có thể hướng dẫn học sinh giải quyết bài tập này
bằng một số hoạt động sau:
Hoạt động 1.1: Xây dựng ý tưởng tính n!
Học sinh có thể đi từ cách viết tường minh để tìm ra phương pháp tính
n! như cách vừa xây dựng công thức tính tổng Y trong bài tập 5a nêu ở trên như
sau:
0!= 1;
1!= 1*1=0!*1;
2!= 1*1*2= 1!*2;
3!= 1*1*2*3= 2!*3;
Tương tự như vậy ta sẽ có:
n!= (n-1)!*n;
Ý tưởng:
* Gán gt:=1;
* Cho một biến i tăng từ 1 đến n rồi thực hiện tính :
gt(lần sau)=gt(lần trước)* n;
Hoạt động 1.2: Xác định điều kiện để thực hiện tính n! của bài tập.
Nếu không cẩn thận học sinh sẽ nhầm lẫn khi xác định điều kiện này. Theo
yêu cầu của bài tập, tính n! cho đến khi điều kiện
6
1
2 10
!n
−
< ×
thỏa mãn. Có nghĩa là
chỉ thực hiện tính n! trong khi
6
1
2 10
!n
−
≥ ×
.
Hoạt động 1.3: Xây dựng thuật toán tính n! cho đến khi
6
1
2 10
!n
−
< ×
Việc xây dựng thuật toán này học sinh có thể dựa vào thuật toán
Tong_2 (SGK Tin học 11 - Trang 45) kết hợp với việc xác định được ý tưởng ở
hoạt động 1.1 và điều kiện tính n! ở hoạt động 1.2.
Thuật toán:
Bước 1: gt←1; n←0;
Bước 2: Nếu 1/gt<0.000002 thì chuyển đến bước 5;
Bước 3: n←n+1;
Bước 4: gt←gt*n rồi quay lại bước 2;
Bước 5: Kết thúc.
Hoạt động 1.4: Viết đoạn câu lện tính n! cho đến khi
6
1
2 10
!n
−
< ×
Dựa vào các hoạt động trên học sinh tiến hành viết chương trình như
sau:
gt:=1; n:=0;
While (1/gt>=0.000002) do
Begin
9
n:=n+1;
gt:=gt*n;
end;
Hoạt động 2: Với việc thực hiện hoạt động 1 học sinh đã có thể tính được n!
cho đến khi
6
1
2 10
!n
−
< ×
. Vậy việc thực hiện hoạt động 2 sẽ được tiến hành như sau:
Hoạt động 2.1: Xây dựng câu lệnh gán tính E(n).
Cũng tương tự như cách xác định tính tổng Y, hay n!. Công thức tính
E(n) học sinh có thể đi từ cách viết tường minh để tìm ra được câu lệnh gán:
Lần 1:
E(1)=1+1/1!;
Lần 2:
E(2)=1+1/1!+1/2!=E(1)+1/2!;
Lần 3:
E(3)=1+1/1!+1/2!+1/3!=E(2)+1/3!
Như vậy E(lần sau)= E(lần trước)+1/gt;
Ngoài ra có thể lồng thêm trong hoạt động này cho học sinh xác định
giá trị ban đầu của E. Quan sát trong công thức viết tường minh tính E(n), có thành
phần đầu tiên không chứa gt vì vậy không liên quan đến giá trị của 1/gt. Do đó giá
trị khởi tạo ban đầu của E(n) bằng giá trị của thành phần đầu tiên là 1.
Hoạt động 2.2: Xây dựng thuật toán tính E(n) cho đến khi
6
1
2 10
!n
−
< ×
Do đã xây dựng thuật toán tính n! cho đến khi
6
1
2 10
!n
−
< ×
nên việc xác
định giá trị ban đầu cho các biến gt, n, E và điều kiện để thực hiện tính của câu lệnh
lặp với số lần biết trước học sinh đã xác định được. Bên cạnh đó thuật toán tính E
khi xây dựng cũng tương tự như cách xây dựng thuật toán Tong_2 và thuật toán
tính n! nên học sinh có thể xây dựng được tuật toán như sau:
Bước 1: n←0;gt←1;E←1;
Bước 2: Nếu 1/gt<0.000002 thì chuyển đến bước 5;
Bước 3: n←n+1;
Bước 4: gt←gt*n; E←E+1/gt; Rồi quay lại bước 2;
Bước 5: Kết thúc.
Hoạt động 3: Sau khi xây dựng thuật toán, chương trình tính E(n) cho đến
khi
6
1
2 10
!n
−
< ×
đưa giá trị E(n) ra màn hình.
Chương trình tính E(n):
Program Tinh_En;
Var n, gt: integer;
E: real;
10
Begin
n:=0;gt:=1; E:=1;
While 1/gt>=0.000002 do
Begin
n:=n+1;
gt:=gt*n;
E:=E+1/gt;
end;
Writeln('Tong E(n)=',E:6:2);
Readln;
End.
11
V. Hiệu quả của SKKN
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
vận dụng và làm tốt các bài tập và bài tập thực hành trong “chương III-Tin học
11”, 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 làm được một số bài. Nhưng đến năm học 2011 – 2012, 2012 – 2013
tôi đã vận dụng các phương pháp giảng dạy trên thì 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ề các cấu trúc: tuần tự, rẽ nhánh, lặp nó giúp các
em có nền tảng tốt để học tốt hơn toàn bộ chương trình trình tin học 11, và
những em sau này muốn học sâu hơn về lĩnh vực này thì đó cũng là một nền
tảng vững chắc vì theo định lí Bohn Jacopini: "Mọi quá trình tính toán đều có
thể mô tả và thực hiện dựa trên ba cấu trúc cơ bản là cấu trúc tuần tự, cấu
trúc rẽ nhánh và cấu trúc lặp".
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 III qua các năm:
1. Năm học chưa áp dụng SKKN
Năm học 2010 – 2011
2. Năm học đã áp dụng SKKN
Năm học 2011 – 2012
Năm học 2012 – 2013
STT LỚP Sĩ số Số lượng TB trở lên Tỉ lệ % trên TB
1 11A4 55 42 76.3
2 11A5 50 36 72.0
STT LỚP Sĩ số Số lượng TB trở lên Tỉ lệ % trên TB
1 11B8 38 33 86.8
2 11B9 36 30 83.3
12
STT LỚP Sĩ số Số lượng TB trở lên Tỉ lệ % trên TB
1 11C8 42 41 97.6
2 11C9 42 39 92.8
13
C.KẾT LUẬN
1. Những mặt đạt được và chưa đạt được
Những mặt đạt được
- Phần lớn học sinh nắm được kiến thức của các bài học vận dụng vào
làm các bài tập.
- Có thái độ tích cực trong học tập, yêu thích môn học hơn.
- Chú ý hơn trong các giờ thực hành.
Những mặt chưa đạt được
- Một số em tiếp xúc ít với máy tính nên còn chậm trong các thao tác
thực hành.
- Một số học sinh chưa nhạy bén trong việc áp dụng lý thuyết vào bài
tập.
2. Nguyên nhân
Khách quan
- Môn tin là môn học khó và mới đối với học sinh
- 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 đầu tư học.
Chủ quan
- Học sinh chưa chịu khó học
- Kinh nghiệm của cá nhân còn chưa đủ nhiều vì mới tham gia giảng
dạy được 4 năm.
XÁC NHẬN CỦA HIỆU TRƯỞNG Triệu Sơn, Tháng 5 năm 2013
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
14
TÀI LIỆU THAM KHẢO
1. Sách giáo khoa tin học 11, NXBGD
2. Sách bài tập tin học 11, NXBGD
3. Sách giáo viên tin học 11, NXBGD
4. Lí luận dạy học tin học (Trương Trọng Cần, ĐHV)
5. Tài liệu bồi dưỡng thường xuyên giáo viên THPT chu kì III môn Tin học,
NXB Đại học sư phạm.
15
MỤC LỤC
Trang
A. PHẦN MỞ ĐẦU
1
I. Lý do chọn đề tài
1
II. Phạm vi và đối tượng nghiên cứu
1
III. Mục đích nghiên cứu
1
B. NỘI DUNG
2
I. Cơ sở lý luận 2
II. Thực trạng của vấn đề 4
III. Nguyên nhân 4
IV. Biện pháp tiến hành để giải quyết vấn đề 5
V. Hiệu quả của SKKN 12
C. KẾT LUẬN
13
TÀI LIỆU THAM KHẢO 14
16