Giúp học sinh hình thành và phát triển tư duy thông qua việc xây dựng và sử dụng 1 số bài tập khi dạy Tin học lớp 11 THPT

Giúp học sinh hình thành và phát triển tư duy thông qua việc xây dựng và sử dụng 1 số bài tập khi dạy Tin học lớp 11 THPT

Trong bối cảnh hiện nay, cả thế giới đang bước vào thời kì công nghiệp 4.0 thì công nghệ thông tin được coi là ngành quyền lực bậc nhất với hàng loạt ứng dụng trong mọi lĩnh vực của đời sống - từ sản xuất, kinh doanh đến giáo dục, y tế, văn hóa. Để tối ưu hóa năng suất lao động, tiết giảm nhân lực lao động thủ công, tiết kiệm chi phí sản xuất thì hàng loạt những công nghệ thông minh được ra đời như công nghệ tự động hóa, trao đổi dữ liệu Để làm được điều này cần thiết phải có một bộ phận người lập trình. Việc đưa bộ môn lập trình vào giảng dạy trong nhà trường THPT là một nhu cầu tất yếu và thực sự cần thiết, đón đầu những yêu cầu của thực tiễn trong kỉ nguyên thông tin, trong xã hội tự động hóa.

 Bộ môn lập trình được đưa vào giảng dạy trong chương trình Tin học 11 là một môn khoa học có tính trừu tượng và tính phổ dụng cao. Tin học lập trình không chỉ giúp học sinh tìm hiểu những đoạn chương trình đơn giản mà còn huớng cho học sinh những nhận thức mới, luyện cho học sinh khả năng tự tìm tòi khám phá từ đó góp phần phát triển tư duy nhận thức của học sinh, rèn luyện cho học sinh khả năng tự độc lập suy nghĩ giải quyết vấn đề.

 Nhận thức được tầm quan trọng của việc dạy học Tin học lập trình, mong muốn tìm ra phuơng pháp dạy học mới, giúp học sinh dễ dàng hơn trong việc tiếp cận và vận dụng kiến thức tôi đã nghiên cứu, xây dựng và hệ thống hóa một số các bài tập lập trình đưa vào giảng dạy Tin học 11 bước đầu đã có hiệu quả tích cực. Từ các kinh nghiệm trong quá trình nghiên cứu và áp dụng trong thực tiễn giảng dạy, tôi xin trình bày thông qua sáng kiến kinh nghiệm đề tài: ''Giúp học sinh hình thành và phát triển tư duy thông qua việc xây dựng và sử dụng 1 số bài tập khi dạy Tin học lớp 11 THPT''.

 

doc 17 trang thuychi01 5722
Bạn đang xem tài liệu "Giúp học sinh hình thành và phát triển tư duy thông qua việc xây dựng và sử dụng 1 số bài tập khi dạy Tin học lớp 11 THPT", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
1. MỞ ĐẦU
1.1 - Lí do chọn đề tài
Trong bối cảnh hiện nay, cả thế giới đang bước vào thời kì công nghiệp 4.0 thì công nghệ thông tin được coi là ngành quyền lực bậc nhất với hàng loạt ứng dụng trong mọi lĩnh vực của đời sống - từ sản xuất, kinh doanh đến giáo dục, y tế, văn hóa... Để tối ưu hóa năng suất lao động, tiết giảm nhân lực lao động thủ công, tiết kiệm chi phí sản xuất thì hàng loạt những công nghệ thông minh được ra đời như công nghệ tự động hóa, trao đổi dữ liệu Để làm được điều này cần thiết phải có một bộ phận người lập trình. Việc đưa bộ môn lập trình vào giảng dạy trong nhà trường THPT là một nhu cầu tất yếu và thực sự cần thiết, đón đầu những yêu cầu của thực tiễn trong kỉ nguyên thông tin, trong xã hội tự động hóa. 
 Bộ môn lập trình được đưa vào giảng dạy trong chương trình Tin học 11 là một môn khoa học có tính trừu tượng và tính phổ dụng cao. Tin học lập trình không chỉ giúp học sinh tìm hiểu những đoạn chương trình đơn giản mà còn huớng cho học sinh những nhận thức mới, luyện cho học sinh khả năng tự tìm tòi khám phá từ đó góp phần phát triển tư duy nhận thức của học sinh, rèn luyện cho học sinh khả năng tự độc lập suy nghĩ giải quyết vấn đề.
 Nhận thức được tầm quan trọng của việc dạy học Tin học lập trình, mong muốn tìm ra phuơng pháp dạy học mới, giúp học sinh dễ dàng hơn trong việc tiếp cận và vận dụng kiến thức tôi đã nghiên cứu, xây dựng và hệ thống hóa một số các bài tập lập trình đưa vào giảng dạy Tin học 11 bước đầu đã có hiệu quả tích cực. Từ các kinh nghiệm trong quá trình nghiên cứu và áp dụng trong thực tiễn giảng dạy, tôi xin trình bày thông qua sáng kiến kinh nghiệm đề tài: ''Giúp học sinh hình thành và phát triển tư duy thông qua việc xây dựng và sử dụng 1 số bài tập khi dạy Tin học lớp 11 THPT''.
1.2 - Mục đích nghiên cứu
 Mục đích nghiên cứu của sáng kiến kinh nghiệm này là hệ thống hóa các bài tập ngôn ngữ lập trình trong chương trình Tin học 11 nhằm hình thành và phát triển những phẩm chất tư duy của học sinh.
1.3 - Đối tượng nghiên cứu 
Sáng kiến kinh nghiệm có đối tượng nghiên cứu là các bài tập lập trình trong sách giáo khoa Tin học 11 và các bài tập có liên quan được chọn lọc nhằm hình thành và phát triển tư duy cho học sinh.
1.4 - Phương pháp nghiên cứu
Để trình bày sáng kiến kinh nghiệm này, tôi đã sử dụng phối kết hợp nhiều phương pháp như: nghiên cứu tài liệu, thuyết trình, quan sát, thực nghiệm so sánh, phân tích kết quả thực nghiệm,  phù hợp với môn học thuộc lĩnh vực Tin học.
2. NỘI DUNG
2.1 - Cơ sở lí luận
Theo nội dung chương 1 – Mục tiêu và nhiệm vụ của môn Tin học thì nhiệm vụ của bộ môn Tin học đã được Bộ Giáo Dục xác định rõ: “ Trên cơ sở cung cấp những tri thức cơ bản, có hệ thống, bộ môn Tin học còn phải rèn luyện cho học sinh những năng lực trí tuệ chung như kĩ năng tư duy, trừu tượng, kĩ năng thực hành cần thiết”. Về tư duy, cần hình thành và phát triển các thao tác chủ yếu: tư duy logic, phân tích, so sánh, tổng hợp, khái quát hoá, trừu tượng hoá. Về thực hành cần chú trọng đến kĩ năng sử dụng máy tính, kĩ năng vận dụng Tin học vào thực tiễn. Cũng cần chú ý luyện tập cho học sinh thói quen gắn liền các thao tác tư duy với các kĩ năng thực hành như là một thể thống nhất trong hoạt động nhận thức”[6].
2.2 - Thực trạng
2.2.1 - Giới thiệu khái quát về trường
Trường THPT Đặng Thai Mai nơi tôi công tác đóng trên địa bàn xã Quảng Bình, huyện Quảng Xương. Nơi đây phần đông các em học sinh xuất thân từ gia đình nông nghiệp thuần túy, điều kiện kinh tế còn nhiều khó khăn. Rất nhiều em phải ở nhà với ông bà, do bố mẹ đi làm ăn xa. Điều này có ảnh hưởng ít nhiều đến ý thức học tập của các em. Một số em bỏ bê học hành, mất thời gian vào các hoạt động vô bổ như game, facebook dẫn đến kết quả học tập giảm sút.
Bên cạnh đó, còn một bộ phận không nhỏ học sinh và phụ huynh chưa đánh giá hết tầm quan trọng của môn Tin học, coi môn Tin học chỉ là môn phụ. Các em chỉ chú tâm vào học các môn được coi là chính để phục vụ cho việc thi tốt nghiệp, đại học. Do các em học sinh này không thực sự chú tâm vào học tập môn Tin học, dẫn đến kết quả môn học cũng không cao.
Tuy nhiên, được sự quan tâm sâu sát của Ban Giám Hiệu và các tổ chức trong nhà trường, thầy và trò trường THPT Đặng Thai Mai vẫn luôn nỗ lực trong việc dạy, học và đạt một số thành tích nhất định.
Đối với bộ môn Tin học, nhiều năm liên tục nhà trường đều có học sinh đạt giải trong kì thi chọn học sinh giỏi cấp tỉnh. Năm học 2017- 2018 có 1 học sinh đạt giải nhì và 1 học sinh đạt giải ba (đạt tỉ lệ 100% số học sinh tham gia thi).
2.2.2 - Thực trạng trước khi nghiên cứu
 	Có một thực tế là học sinh rất thích thú khi được trải nghiệm cùng chiếc máy tính, hào hứng khi biết sẽ được học về ngôn ngữ lập trình – ngôn ngữ để viết nên các chương trình chạy được trên máy tính và ứng dụng vào đời sống. Tuy nhiên các kiến thức ngôn ngữ lập trình trong chương trình Tin học 11 rất trừu tượng khó hiểu nên việc học sinh không nắm vững được các kiến thức trong sách giáo khoa, khi giải bài tập học sinh áp dụng một cách máy móc kiến thức dần trở nên phổ biến, từ đó làm giảm kĩ năng tư duy của học sinh. Trong các giờ thực hành học sinh chưa thực sự chú tâm để chạy chương trình chỉ chạy các chương trình có sẵn trong sách giáo khoa và các bài giáo viên làm sẵn trên lớp hay làm việc riêng cho giờ thực hành.
	Các bài tập trong sách giáo khoa Tin học 11 còn tương đối khó, dàn trải chưa thực sự phù hợp với mức độ tư duy của học sinh, đặc biệt là học sinh các lớp cơ bản của trường THPT Đặng Thai Mai. Việc tiếp cận và giải quyết các bài tập này ở học sinh còn thụ động, chưa có hiệu quả cao, học sinh cũng rất khó khăn trong việc vận dụng kiến thức để giải quyết các bài tập tương tự. 
2.3 - Các giải pháp đã sử dụng để giải quyết vấn đề 
2.3.1 - Bài tập lập trình 
2.3.1.1 - Các khái niệm 
Theo tài liệu sách giáo khoa Tin học 10, bài 4 - Bài toán và thuật toán thì “Trong Tin học, bài toán là một việc ta muốn giao cho máy tính thực hiện”. Muốn máy tính thực hiện được công việc trên thì bài toán phải được lập trình trên máy tính. Việc đưa thông tin vào máy tính, biến đổi và tìm ra kết quả có thể diễn đạt theo sơ đồ:
 A--------------> B
Trong đó: A: input là thông tin vào; B: output là thông tin ra.
 Và quá trình biến đổi thông tin từ A thành B có thể được hiểu là giải quyết một bài tập lập trình [1].
2.3.1.2 - Tác dụng của bài tập lập trình trong việc dạy và học Tin học ở trường trung học phổ thông
 - Bài tập lập trình là một hình thức củng cố, ôn tập hệ thống hoá kiến thức một cách sinh động.
 - Bài tập lập trình là một phương tiện rất tốt để phát triển tư duy và khả năng sáng tạo của học sinh.
 - Bài tập lập trình là phương tiện rất tốt để làm tăng hứng thú học tập của học sinh.
 - Thông qua việc giải bài tập lập trình còn luyện cho học sinh phẩm chất độc lập suy nghĩ, tính kiên trì dũng cảm, khắc phục khó khăn để vượt lên.
 - Bài tập lập trình là phương tiện nghiên cứu tài liệu mới khi trang bị kiến thức cho học sinh.
 - Bài tập lập trình là phương tiện rất tốt để kiểm tra việc lĩnh hội kiến thức mới, nhớ các kiến thức đã học, kiểm tra năng lực tư duy sáng tạo của học sinh.
2.3.1.3 - Các phương pháp hướng dẫn giải bài tập lập trình
 - Hướng dẫn theo mẫu có sẵn: là sự hướng dẫn hành động theo mẫu có sẵn trong đó chỉ rõ cần thực hiện những hành động nào vào trình tự nào để đi đến kết quả.
 - Hướng dẫn tìm tòi: kiểu hướng dẫn này mang tính chất gợi ý, tìm tòi để học sinh phát hiện ra các khả năng giải quyết vấn đề, tự xác định các hành động cần thực hịên để tìm ra kết quả.
 - Hướng dẫn định hướng khát quát chương trình hoá: là sự hướng dẫn cho học sinh tự tìm tòi để giải quyết.
2.3.2 - Xây dựng và sử dụng hệ thống bài tập ngôn ngữ lập trình nhằm hình thành và phát triển phẩm chất tư duy của học sinh
2.3.2.1- Những cơ sở để xây dựng hệ thống bài tập ngôn ngữ lập trình 
Căn cứ vào mục đích của đề tài là phát triển những phẩm chất tư duy của học sinh thông qua việc sử dụng hệ thống bài tập ngôn ngữ lập trình trong chương trình Tin học 11 THPT. Vì thế trong tôi sẽ cố gắng lựa chọn hệ thống bài tập để đáp ứng mục đích trên. 
Căn cứ vào yêu cầu của vấn đề lựa chọn bài tập ngôn ngữ lập trình trên cơ sở việc phân bậc hoạt động. Các bài tập phải đi từ dễ đến khó, từ đơn giản đến phức tạp về một quan hệ giữa các đối tượng trong bài toán hay giữa các yêu cầu trong một bài toán. 
Trong hệ thống bài tập đưa thêm một số bài tập mang tính chất tổng hợp kiến thức với mục đích làm phong phú đa dạng hoá các bài tập ngôn ngữ lập trình và thông qua việc hướng dẫn học sinh giải các bài tập đó giúp học sinh phát triển năng lực tư duy của mình.
Căn cứ và thực tế dạy học, phải làm sao thông qua hệ thống bài tập tạo cho học sinh năng lực tìm tòi, tự giải quyết vấn đề. 
Để làm cơ sở cho việc lựa chọn hệ thống bài tập ngôn ngữ lập trình cần phải biết đuợc thực trạng dạy và học ngôn ngữ lập trình lớp 11 hiện nay, biết đuợc nội dung kiến thức cần truyền thụ và rèn luyện để phát triền năng cao kiến thức của học sinh. Từ đó rút ra được các yêu cầu cụ thể và lựa chọn đuợc thống bài tập cho hợp lý. 
 	Hoạt động dạy và học là hoạt động của cả thầy và trò, trong đó nguời thầy giữ vai trò chủ đạo và tích cực. Xuất phát từ đó lựa chọn hệ thống bài tập ngôn ngữ lập trình phải có tác dụng thúc đẩy sự tích cực hoá hoạt động của học sinh trong quá trình ngôn ngữ lập trình. 
 Các bài tập dưới đây chỉ là những bài tập đặc trưng trong hệ thống bài tập đuợc xây dựng theo huớng của đề tài. 
2.3.2.2- Xây dựng hệ thống bài tập ngôn ngữ lập trình và sử dụng trong giảng dạy Tin học 11
Dựa vào các cơ sở trên ta có thể xây dựng hệ thống bài tập ngôn ngữ lập trình nhằm hình thành và phát triển phẩm chất tư duy của học sinh theo các tiêu chí sau :
 - Xây dựng hệ thống bài tập theo hướng gợi mở 
 - Xây dựng hệ thống bài tập từ phân bậc 
 - Xây dựng hệ thống bài tập tổng hợp 
2.3.2.2.1 - Xây dựng hệ thống bài tập theo hướng gợi mở 
Khi xây dựng hệ thống bài tập này giáo viên có thể đưa ra học sinh những bài tập đơn giản và một số bài tập mẫu cho học sinh nhằm truyền đạt tư duy có sẵn cho học sinh từ đó học sinh làm quen dần với những thao tác tư duy và hình thành các thao tác tư duy riêng của mình.
Bài toán 1: Lập trình tính tổng S= 1+2+3+...+n Với n là số nguyên dương được nhập từ bàn phím. 
 Xác định bài toán : 
 Input: số nguyên duơng n 
 Output: Tổng S = 1+2+3+...+n
Chương trình: 
Program bai_1;
Var s,i,n:integer;
Begin 
Write ('nhap n='); readln (n);
s:=0;
For i:=1 to n do s:=s+i;
Writeln('tong la:',s);
 Readln;
End.
Với bài toán này ta có thể hình thành cho học sinh những tư duy sau: 
Thao tác phân tích: Chia công việc thành các bước sau:
Buớc 1: Gán s:=0. Cộng phần tử thứ nhất= 1 và tổng s= 0+1=1
Bước 2: s:=1. Cộng phần tử thứ hai =2 vào tổng s=s+2=1+2=3
Bước 3: s:=3. Cộng phần tử thứ ba =3 vào tổng s=s+3=3+3=6
Các thao tác tương tự: Tương tự cho các bước còn lại là bước 4 đến bước n 
Khái quát cho bước thứ i: 
Bước i: Cộng lần lượt phần tử thứ i vào tổng s với i chạy từ 1 đến n. Cho i chạy từ 1 đến n, s:=s+i
Thao tác tổng hợp: Tổng hợp cho n buớc vào dựa vào khái quát bước thứ i với i chạy từ 1 đến n ta có giải tính tổng s
 Khi kiểm ra việc giải bài tập của học sinh giáo viên có thể hỏi một số câu để học sinh tư duy và trả lời. Để trả lời câu hỏi đó học sinh phải có một quá trình tư duy lôgic áp dụng các thao tác tư duy. Từ đó hình thành và phát triển tư duy của học sinh. 
* Một số câu hỏi để phát triển tư duy cho học sinh : 
a. Tại sao lại gán tổng s=0 ?
b. Nêu quá trình của việc vòng lặp for...to....do ?
c. Có thể sử dụng vòng lặp khác để giải bài toán này được toán được không?
Bài toán 2: Nhập và in ra màn hình một xâu bất kì.
* Ngoài hệ thống bài tập trên ta có thể xây dựng hệ thống bài tập trắc nghiệm trên máy vi tính. Trong hệ thống bài tập này gồm những câu trắc nghiệm đơn giản củng cố kiến thức cho học sinh bước đầu hình thành cho học sinh các thao tác tư duy, có thể một số câu hỏi bắt buộc học sinh phải có một quá trình tư duy thì mới có thể tìm ra được đáp số [2].
Bài toán 1: Kiểu dữ liệu sau kiểu dữ liệu nào có giá trị lớn nhất?
a. word c. byte 
b. integer d. longint
Đáp án: d
Bài toán 2: Kết quả của chương trình sau là gì?
Var x,y: integer ;
Begin
x:=10; y:=15;
If (x>y) then x:=x-y else y:=y-x
End.
a. x=10, y=5 c. x=10, y=15
b. x=5, y=15 d. Chuơng tình báo lỗi 
 Đáp án: a 
Bài toán 3: Hãy cho biết đoạn chuơng trình cho kết quả là gì ?
 tong :=0; 
 For i:=1 to 10 do 
 If i mod 3=0 then tong:=tong+i*i
a. 18 b. 126
c. 55 d. 10 
Đáp án: b [2].
2.3.2.2.2 - Xây dựng hệ thống bài tập phân bậc
Khi xây dựng hệ thống bài tập này với những bài tập bước đầu chỉ là những bài tập với các mức độ đơn giản sau đó nâng dần các mức độ khó hơn điều đó đòi hỏi học sinh phải có một quá trình tư duy thì mới giải quyết được các yêu cầu đó. Điều này giúp học sinh phát triển được tư duy của mình. Ta có thể xây dựng được bài tập phân bậc theo các tiêu trí khác nhau. 
* Xây dựng hệ thống bài tập phân bậc dựa vào sự phức tạp của đối tượng của bài toán:
Bài toán 1: Lập trình tính tổng S=12 +22 + 32 + ... +n2 với n là số nguyên dương được nhập từ bản phím.
 Xác định bài toán:
 Input: số nguyên dương
 Output: Tổng s=12+22+32+....+n2
Bài toán 2: Lập trình tính tổng S=1k+2k+3k+....+nk với n, k là số nguyên dương nhập từ bàn phím.
 Xác định bài toán:
 	 Input: Số nguyên dương n, k
 	 Output: Tổng s.
* Xây dựng hệ thống bài tập phân bậc dựa vào mức độ yêu cầu.
 Có thể nâng dần mức độ yêu cầu của các câu trong cùng một bài hoặc các bài. Những bài toán ban đầu chỉ là những bài toán đơn giản chỉ cần áp dụng những thao tác tư duy đơn giản cũng có thể giải quyết được. Nhưng ở bài toán về sau mức độ yêu cầu ngày càng tăng đòi hỏi phải tổng hợp các thao tác tư duy đúng lúc, đúng thời điểm mới giải quyết được.
Bài toán 1.1: Nhập vào một mảng có các phần tử là các số nguyên dương. Lập trình in ra màn hình mảng vừa nhập.
 Xác định bài toán:
 	Input: Nhập các số nguyên dương
 	Output: Mảng gồm các số nguyên dương
Bài toán 1.2: Nhập mảng gồm n phần tử là số nguyên dương. In ra màn hình các phần tử là nguyên tố.
 Xác định bài toán:
Input: các số nguyên dương
 	Output: các số nguyên tố trong mảng
Bài toán 1.3: Nhập mảng gồm n phần tử là số nguyên dương. Đếm xem trong mảng có bao nhiêu phân tử là số nguyên tố có 2 chữ số.
 Xác định bài toán:
Input: các số nguyên dương
 	Output: tổng các số nguyên tố trong mảng
Bài toán 2.1: Nhập vào từ bàn phím một xâu. Hãy in ra màn hình xâu vừa nhập
 Xác định bài toán
 	Input: Các kí tự
 	Output: In xâu
Bài toán 2.2: Lập chương trình nhập vào một xâu bất kỳ. Sau đó nhập thêm một kí tự, kiểm tra xem kí tự đó xuất hiện bao nhiêu lần trong xâu
 Xác định bài toán:
Input: Xâu kí tự
 	Output: số lần xuất hiện kí tự trong câu
Bài toán 2.3: Nhập vào màn hình một xâu kí tự. Đếm và in ra màn hình số từ trong xâu. Từ là các chữ cái viết gần nhau không có kí tự trống
 Xác định bài toán
Input: Xâu, một kí tự
Output: Số từ trong một câu [2]
2.3.2.2.3 - Xây dựng hệ thống bài tập tổng hợp
 Việc xây dựng hệ thống bài tập này nhằm mục đích có thể hình thành tư duy học sinh một cách tổng hợp. Vì để giải được các bài toán này học sinh phải sử dụng rất nhiều các thao tác tư duy. Bài tập này có thể tổng hợp kiến thức của một chương hoặc cả chương trình học [2].
Bài toán 1: Dùng chương trình con viết chương trình đọc vào một mảng, xác định phần tử lớn nhất, nhỏ nhất trong mảng.
 Xác định bài toán:
Input: mảng có các phần tử là số nguyên
Output: số lớn nhất, nhỏ nhất của mảng
Bài toán 2: Dùng chương trình con viết chương trình tính
 C(m,n) = m!/(n!*(m-n)!)
 Xác định bài toán
 	Input: Số m,n
Output: C(m,n)
Bài toán 3: Viết chương trình tính diện tích tam giác khi biết toạ độ 3 đỉnh A(x1,y1), B(x2,y2), C(x3,y3)
 Xác định bài toán
 	Input: Nhập toạ độ 3 đỉnh A,B,C
 	Output: S tam giác ABC
2.3.2.3 - Sử dụng hệ thống bài tập đã xây dựng trong dạy học lập trình Tin học 11
	Hệ thống các bài tập trên đã được tôi áp dụng vào giảng dạy Tin học theo nhiều hướng khác nhau như:
Sử dụng các bài tập trong hệ thống bài tập này để dùng làm ví dụ minh họa khi giảng dạy.
Sử dụng các bài tập trong hệ thống bài tập để dùng làm bài tập trong các giờ bài tập và bài tập về nhà cho học sinh. Giáo viên giao bài tập cho học sinh theo kiểu dạy học phân hoá. Với hệ thống bài tập này, giáo viên có thể phân loại được học sinh và từ đó có thể áp dụng từng loại bài tập cụ thể cho từng đối tượng học sinh.
Sử dụng các bài tập trong hệ thống bài tập để dạy học thực hành.
Tổng hợp những nội dung đã học để yêu cầu học sinh làm những bài tập có quy mô lớn. Các bài tập lớn là những bài tập đòi hỏi áp dụng nhiều kiến thức tổng hợp vì vậy việc làm bài tập lớn thường được áp dụng cho các học sinh khá giỏi.
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.
	Trong quá trình giảng dạy nhiều năm qua, tôi nhận thấy việc học lập trình và vận dụng làm bài tập đối với các em học sinh đa phần là khó. Mặc dù trong sách giáo khoa lớp 11 đã có rất nhiều ví dụ minh họa và xen kẽ với các tiết lý thuyết là các buổi bài tập, nhưng số lượng bài tập trong sách không nhiều. Học sinh gần như chỉ học thuộc lòng các câu lệnh trong sách giáo khoa một cách máy móc, không thực sự hiểu hết bản chất lệnh, học bài sau thì quên ngay bài trước nên khả năng vận dụng vào làm bài tập rất khó khăn, kết quả học tập vì thế cũng không cao.
Năm học 2017- 2018 tôi được phân công giảng dạy Tin học ở nhiều khối lớp, riêng đối với khối 11 tôi được phân công giảng dạy môn ở các lớp 11A5, 11A6, 11A7, 11A8, 11A9. Đây là các lớp cơ bản của nhà trường. Nhìn chung, các em học sinh ở các lớp này đều có mức độ tiếp thu trung bình, một số em mức độ tiếp thu còn hạn chế. Sau khi nghiên cứu và hệ thống hóa các bài tập lập trình trong chương trình Tin học 11 tôi đã áp dụng vào giảng dạy thử nghiệm ở các lớp 11A5, 11A6. Các lớp 11A7, 11A8, 11A9 được tôi giảng dạy theo phương pháp cũ, tức là thực hiện lần lượt các bài tập theo hướng dẫn của sách giáo khoa. 
Dưới đây là bảng so sánh kết quả điểm trung bình môn Tin học cuối năm học 2017 – 2018 của các lớp thực nghiệm và các lớp đối chứng trong quá trình tôi thực hiện đề tài:
Lớp
Tổng Số HS
Giỏi
8-10 điểm
Khá
6.5-6.9 điểm
TB
5- 6.4 điểm
Yếu
3.5–4.9điểm
Kém
0-3.4 điểm
SL
%
SL
%
SL
%
SL
%
SL
%
11A5
(Áp dụng SKKN)
38
30
78.95%
8
21.05%
0
0%
0
0%
0
0%
11A6
 (Áp dụng SKKN)
38
28
73.7%
10
26.31%
0
0%
0
0%
0
0%
Tổng
76
58
76.32%
18
23.68%
0
%
0
%
0
0%
11A7
 (không áp dụng SKKN
37
5
13.51%
27
72.97%
4
10.81%
1
2.7%
0
0%
11A8
(không áp dụng SKKN)
38
6
15.8%
24
63.15%
7
18.42%
1
2.6%
0
0%
11A9
(không áp dụng SKKN)
42
4
9.5%
23
54.76%
13
30.95%
2
4.47%
0
0%
Tổng
117
15
12.82%
74
63.24%
24
20.51%
4
3.4%
0
0%
	Việc áp dụng đề tài sáng kiến kinh nghiệm trên vào giảng dạy lập trình đã có hiệu quả rõ rệt. Học sinh dễ dàng tiếp cận với các câu lệnh Pascal, biệt vận dụng các kiến thức về câu lệnh vào các bài tập lập trình đơn giản. Học sinh có hứng thú hơn trong các tiết học bài tập và các tiết học thực hành Tin học.
3. KẾT LUẬN VÀ KIẾN NGHỊ
3.1 - Kết luận 
Sáng kiến kinh nghiệm trên đã xây dựng hệ thống bài tập lập trình theo 3 hướng: gợi mở, phân bậc và tổng hợp; đồng thời sáng kiến cũng đã đưa ra các phương án sử dụng trong giảng dạy học Tin học 11. Thông qua hệ thống bài tập lập trình này, dưới sự hướng dẫn của giáo viên học sinh sẽ hiểu bài hơn, từ đó có hứng thú hơn trong các giờ học Tin học. Đồng thời việc áp dụng đề tài trên vào giảng dạy còn góp phần hình thành và phát triển cho học sinh những thao tác tư duy quan trọng như: phân tích, tổng hợp, khái quát hóa, trừu tượng hóa, so sánh
Đề tài có thể được áp dụng trong hầu hết các trường THPT, đặc biệt có hiệu quả đối với học sinh có mức độ tiếp thu trung bình và yếu do các bài tập được chọn lọc tương đối dễ, có tính hệ thống, kế thừa, học sinh dễ d

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

  • docgiup_hoc_sinh_hinh_thanh_va_phat_trien_tu_duy_thong_qua_viec.doc