Những định hướng chung, tổng quát về đổi mới phương pháp dạy học các môn học thuộc chương trình giáo dục định hướng phát triển năng lực là: - Phát huy tính tích cực, tự giác, chủ động củ
Trang 1PHẦN I: ĐẶT VẤN ĐỀ
1 Lý do chọn đề tài
Đổi mới phương pháp dạy học nhằm chú trọng phát triển năng lực của học sinh Phương pháp dạy học theo quan điểm phát triển năng lực không chỉ chú ý tích cực hóa học sinh về mặt trí Tuệ mà còn chú ý rèn luyện năng lực giải quyết vấn đề gắn với những tình huống của cuộc sống và nghề nghiệp, đồng thời gắn với hoạt động trí tuệ với hoạt động thực hành, thực tiễn Tăng cường hoạt động trong nhóm, đổi mới quan hệ GV – HS theo hướng cộng tác có ý nghĩa quan trọng nhằm phát triển năng lực xã hội
Những định hướng chung, tổng quát về đổi mới phương pháp dạy học các môn học thuộc chương trình giáo dục định hướng phát triển năng lực là:
- Phát huy tính tích cực, tự giác, chủ động của người học, hình thành và phát
triển năng lực tự học trên cơ sở đó trau dồi các phẩm chất linh hoạt, độc lập, sáng tạo của tư duy
- Có thể lựa chọn một cách linh hoạt các phương pháp chung và phương pháp đặc thù của môn học để thực hiện
- Việc sử dụng phương pháp dạy học gắn chặt với các hình thức tổ chức dạy học Tùy theo mục tiêu, nội dung đối tượng và điều kiện cụ thể mà có những hình thức tổ chức thích hợp như học các nhân, học nhóm…
- Cần sử dụng đủ và hiệu quả các thiết bị dạy học đối với môn học tối thiểu đã quy định
Bộ môn tin học được đưa vào nhà trường nghiên cứu như các bộ môn khoa học khác, các kiến thức tin học được đúc kết từ trong thực tiễn và phát triển dựa trên nhu cầu khai thác của người dùng, do đó có nhiều điều kiện thuận lợi để sử
dụng các phương tiện dạy học - phát huy tính tích cực trong học tập của học
sinh Tuy nhiên, kỹ năng vận dụng những tri thức đã học vào việc giải quyết những bài toán trong thực tiễn của học sinh còn nhiều hạn chế Chính vì lý do
đó, tôi đã lựa chọn cho mình đề tài: “phát huy tính tích cực của học sinh THPT trong dạy học theo định hướng năng lực thông qua ngôn ngữ lập trình pascal - bài 17 tin học 11”
Trang 22 Mục đích của việc nghiên cứu
Mục đích của việc nghiên cứu sử dụng chương trình con trong lập trình
có cấu trúc nhất là lập trình Pascal nhằm giúp học sinh phát huy tính tích cực,
tự giác, chủ động, sáng tạo, rèn luyện thói quen làm việc độc lập và kỹ năng lập trình, giảm bớt thời gian, công sức khi lập trình; giúp cho việc kiểm tra, sửa chữa chương trình trở nên đơn giản hơn, dễ dàng hơn và thuận tiện hơn Bên cạnh đó, học sinh còn biết vận dụng để giải quyết các bài toán thường gặp trong
thực tế; gây hứng thú trong học tập, làm cho “Học” là quá trình kiến tạo; là niềm
say mê để từ đó học sinh biết khai thác và xử lý thông tin, tự hình thành hiểu biết, năng lực và phẩm chất
3 Kết quả cần đạt được
Phải phát huy tính tích cực, tự giác, chủ động, sáng tạo của học sinh; tạo
thói quen làm việc độc lập; bồi dưỡng cho học sinh phương pháp tự học, khả năng hợp tác; rèn luyện kĩ năng lập trình và kỹ năng vận dụng kiến thức vào việc giải quyết các bài toán thường gặp trong thực tiễn; tác động đến tình cảm, đem lại niềm vui, hứng thú và trách nhiệm học tập cho học sinh
4 Đối tượng, phạm vi và kế hoạch nghiên cứu
- Đối tượng nghiên cứu là học sinh trung học phổ thông
- Phạm vi và kế hoạch nghiên cứu:
Khối 11 (Lớp 11B2, 11B6) - Trường THPT Triệu Sơn 2.
Trang 3Phần II: NỘI DUNG
1 Cơ sở lý luận của vấn đề nghiên cứu
Phương pháp dạy học theo quan điểm phát triển năng lực không chỉ chú ý tích cực hóa học sinh về hoạt động trí tuệ mà còn chú ý rèn luyện năng lực giải quyết vấn đề gắn với những tình huống của cuộc sống và nghề nghiệp, đồng thời gắn với hoạt động trí tuệ với hoạt động thực hành, thực tiễn Tăng cường việc học tập trong nhóm, đổi mới quan hệ giáo viên – học sinh theo hướng cộng tác
có ý nghĩa quan trọng nhằm phát triển năng lực xã hội Bên cạnh việc học tập những tri thức và kỹ năng riêng lẻ của các môn học chuyên môn cần bổ sung các chủ đề học tập phức hợp nhằm phát triển năng lực giải quyết cấn đề phức hợp Những định hướng chung, tổng quát về đổi mới phương pháp dạy học các môn học thuộc chương trình giáo dục định hướng phát triển năng lực là:
- Phát huy tính tích cực, tự giác, chủ động của người học, hình thành
và phát triển năng lực tự học, trên cơ sở trau dồi các phẩm chất linh hoạt, độc lập, sáng tạo của tư duy
- Có thể chọn lựa một cách linh hoạt các phương pháp chung và phương pháp đặc thù của môn học để thực hiện Tuy nhiên dù sử dụng bất kỳ phương pháp nào cũng phải đảm bảo được nguyên tắc “học sinh tự mình hoàn thành nhiệm vụ nhận thức với sự tổ chức hướng dẫn của giáo viên”
- Việc sử dụng phương pháp dạy học gắn liền với các hình thức tổ chức dạy học Tùy theo mục tiêu, nội dung, đối tượng, và điều kiện cụ thể mà có những hình thức tổ chức thích hợp như học cá nhân, học nhóm; học trong lớp, học ngoài lớp… Cần chuẩn bị thực hành, vận dụng kiến thức vào thực tiễn, nâng cao hứng thú cho người học
- Cần sử dụng đủ và hiệu quả các thiết bị dạy học môn học tối thiểu đã qui định Có thể sử dụng các đồ dụng dạy học tự làm nếu xét thấy cần thiết với nội dung môn học và phù hợp với đối tượng học sinh Tích cực vận dụng công nghệ thông tin trong dạy học
Một trong những biện pháp đổi mới phương pháp dạy học là biện pháp sử
dụng kỹ thuật dạy học phát huy tính tích cực và sáng tạo cho học sinh Kỹ
thuật này là những cách thức hành động của giáo viên và học sinh trong các tình huống hành động nhỏ nhằm thực hiện và điều khiển quá trình dạy học Các kỹ thuật dạy học là những đơn vị nhỏ nhất của phương pháp dạy học Có những kỹ
Trang 4thuật dạy học chung, có những kỹ thuật đặc thù của từng phương pháp dạy học,
ví dụ kỹ thuật đặt câu hỏi trong đàm thoại Ngày nay người ta chú trọng phát triển và sử dụng kỹ thuật dạy học phát huy tính tích cực, sáng tạo của người học như “động não”, “tia chớp”, “bể cá”, XYZ, bản đồ tư duy,…
Xác định năng lực cần hướng tới dựa trên chương trình giáo dục phổ thông hiện hành là một hoạt động quan trọng và là một công việc rất khó Bởi vì, đây
là hoạt động xác định mục tiêu: làm tường minh mục tiêu của chương trình giáo dục phổ thông hiện hành về năng lực và dần điều chỉnh mục tiêu dạy học theo hướng nhấn mạnh đến hình thành và phát triển năng lực Bởi vậy, xác định năng lực tin học dựa trên chương trình giáo dục phổ thông hiện hành cần được tiến hành thận trọng, đảm bảo những năng lực đề xuất đúng hướng
Từ những cơ sở lý luận trên, khi vận dụng trong giảng dạy bộ môn tin học lớp 11, bản thân tôi có những nhận xét:
- Tư tưởng chính của lập trình có cấu trúc là modul hoá chương trình, nghĩa là
từ một chương trình lớn, có thể phân ra thành những chương trình nhỏ, hay những chương trình con, tương đối độc lập nhau và có thể giải quyết mộ cách độc lập từng chương trình một Trên cơ sở đó, có thể kiểm chứng tính đúng đắn của mỗi chương trình con, rồi ghép nối lại thành chương trình hoàn chỉnh
- Trong khi viết chương trình, ta thường gặp những đoạn chương trình được lặp đi, lặp lại nhiều lần ở những chỗ khác nhau làm cho chương trình trở nên dài dòng Trong Pascal cho phép viết đoạn chương trình đó thành một chương trình con, mỗi khi cần, ta viết thủ tục gọi chương trình con đó ra cùng với những tham
số tương ứng Cách đó làm cho chương trình trở nên ngắn gọn, sáng sủa và tiết kiệm được công sức lập trình
- Với những bài toán lớn, phức tạp sẽ tương ứng với một chương trình rất lớn, rất dài; việc nhìn khái quát tổng thể cả chương trình, cũng như việc gỡ rối, sửa lỗi là rất khó khăn Việc xây dựng một chương trình con cho phép tách chương trình lớn thành những chương trình nhỏ hơn, đơn giản hơn làm cho việc kiểm tra, sửa chữa chương trình được dễ dàng, thuận tiện hơn Sau khi tạo xong các chương trình con này ta chỉ việc ghép chúng lại thành một chương trình hoàn chỉnh Chính lý do này làm cho giá thành xây dựng toàn bộ chương trình giảm xuống và bớt đi được công sức thủ công của người lập trình Chính vì vậy, tôi muốn vận dụng cách viết và sử dụng chương trình con trong lập trình có cấu trúc
Trang 5để giúp cho học sinh có kỹ năng giải quyết một số bài toán được nhanh hơn, chính xác hơn và việc kiểm soát toàn bộ chương trình cũng thuận tiện hơn
2 Thực trạng vấn đề nghiên cứu tổng kết kinh nghiệm
- Với những chương trình lớn thường rất dài, nhìn chung là khó đọc, khó kiểm soát lỗi nhất là đối với học sinh trung học phổ thông, và đặc biệt là không có cách nào khẳng định được tính đúng đắn của một chương trình, ngoài việc kiểm tra chương trình ấy thông qua một số lần chạy thử với những dữ liệu vào khác nhau, nếu thấy kết quả những lần chạy thử đó là đúng thì khẳng định là chương trình đúng
- Để giúp cho học sinh say mê với môn học, giảm bớt thời gian và công sức
khi lập trình; rèn luyện khả năng làm việc độc lập, tích cực, chủ động, sáng tạo,
có tinh thần hợp tác khi làm việc theo nhóm, biết vận dụng những kiến thức đã học để giải quyết một số bài toán thường gặp trong thực tiễn, từ đó nảy sinh vấn
đề là phải hướng dẫn cho học sinh cách viết và sử dụng chương trình con trong lập trình Pascal làm cho chương trình sáng sủa, dễ đọc, dễ hiểu, dễ kiểm tra và điều quan trọng là có thể chứng minh được tính đúng đắn của một chương trình
- Vì học sinh lớp 11 bước đầu làm quen với một loại ngôn ngữ lập trình mới,
cụ thể là ngôn ngữ lập trình pascal, điều đó khiến học sinh hoàn toàn bỡ ngỡ, còn nhiều vướng mắc khi bắt đầu viết chương trình Giáo viên cần định hướng cho học sinh biết cách viết chương trình đơn giản đến phức tạp Giáo viên cần dần hình thành cho học sinh biết phân tích bài toán để chia nhỏ thành các modul
và hoàn thiện để có một chương trình có kết quả chính xác cao Bước đầu các
em có thể chưa có dữ liệu tối ưu, nhưng phải biết cách bố trí form của chương trình
- Với thực trạng trên, bước đầu khi dạy học bằng phương pháp truyền thống, giáo viên dạy gì học sinh biết học cái đó, không tích cực trong việc học tập và
không tự giác nghiên cứu Cùng chương trình dạy học bài 17 tin học 11, khi chưa áp dụng phương pháp dạy học phát huy tính tích cực cho học sinh đối
với lớp 11B2 trường THPT Triệu Sơn 2, qua bài kiểm tra 1 tiết kết quả thu được như sau:
Trang 6Lớp
3 Giải pháp và tổ chức thực hiện
3.1 Các nội dung chính
3.1.1 Một số khái niệm
- Lập trình: Là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán
- Ngôn ngữ lập trình: Là ngôn ngữ để viết chương trình
- Chương trình: Là cách mô tả thuật toán bằng một ngôn ngữ mà máy tính có thể hiểu và thực hiện được
- Thuật toán: Là dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho sau khi thực hiện dãy thao tác đó từ Input ta thu được Output của bài toán
- Chương trình con: Là một dãy lệnh mô tả một số thao tác nhất định và có thể được thực hiện (đựơc gọi) từ nhiều vị trí khác nhau trong chương trình
3.1.2 Phân loại chương trình con
- Chương trình con có 2 loại cơ bản: Chương trình con hàm
Chương trình con thủ tục + Hàm (Function): Là một chương trình con thực hiện một số thao tác nào
đó và trả về giá trị qua tên hàm
+ Thủ tục (Procedure): Là một chương trình con thực hiện các thao tác nhất định nhưng không trả về giá trị nào qua tên của nó
3.1.3 Cấu trúc chương trình con
- Cấu trúc chung:
Trang 7<Phần đầu>
[<Phần khai báo>]
Begin
[<Các lệnh>]; {Phần thân chương trình con}
End;
3.1.4 Sử dụng chương trình con
- Cách gọi chương trình con:
Tên chương trình con (cùng với tham số, nếu có);
- Các tham số được sử dụng trong chương trình con:
+ Tham số hình thức: được viết trong phần khai báo tên chương trình con + Tham số thực sự: được viết trong lời gọi chương trình con
+ Tham biến: Là tham số hình thức viết sau Var Khi đó tham số thực sự của nó phải là biến, không được là giá trị Tham số thực sự có thể bị thay đổi trong chương trình con và sau khi ra khỏi chương trình con nó vẫn giữ nguyên giá trị thay đổi đó
+ Tham trị: Là tham số hình thức không có Var Khi đó tham số thực sự của
nó có thể là giá trị, biến hoặc biểu thức Tham số thực sự có thể bị thay đổi trong chương trình con, nhưng sau khi ra khỏi chương trình con nó lại mang giá trị ban đầu
3.2 Các bước tiến hành:
Bước 1: Lựa chọn chủ đề, nội dung dạy học
Chủ đề: Chương trình con và phân loại
Bước 2: Xác định yêu cầu, kiến thức, kĩ năng, thái độ:
* Kiến Thức:
- Biết khái niệm chương trình con
- Biết sự khác nhau cơ bản giữa thủ tục và hàm
- Biết cấu trúc của chương trình con
- Biết quan hệ giữa tham số hình thức, tham số thực sự và lời gọi thực hiện chương trình con
* Kĩ năng:
- Nhận biết được các thành phần trong đầu của thủ tục
- Nhận biết được hai loại tham số hình thức trong đầu của thủ tục
Trang 8Bước 3: Lập bảng mô tả yêu cầu cần đạt
Nội
dung
Loại
câu
hỏi/
bài
tập
Nhận biết Thông hiểu Vận dụng thấp Vận dụng cao
1 Khái
niệm
chương
trình
con
Câu
hỏi/
bài
tập
định
tính
Học sinh xác định được một đơn vị kiến thức và tái hiện được chính xác nội dung của đơn
vị kiến thức đó
Câu hỏi ND1.DT.NB.*
Bài
tập
định
lượng
HS nhận biết được tính lặp
đi lặp lại một công việc
Câu hỏi ND1.DL.NB.*
HS xác định được các mối liên quan và trùng lặp trong bài toán
Câu hỏi ND1.DL.TH.*
Bài
tập
thực
hành
HS có thể viết một đoạn chương trình thể hiện cho các công việc lặp đi lặp lại đó
Câu hỏi ND1.TH.TH.*
Trang 92 Phân
loại
chương
trình
con
Câu
hỏi/
bài
tập
định
tính
HS nhận biết được các loại của chương trình con
Câu hỏi ND2.DT.NB.*
HS chỉ ra được một số hàm và thủ tục trong lập trình mà em đã biết
Câu hỏi ND2.DT.VDT.*
HS chỉ ra được hàm có giá trị trả về và thủ tục không có giá trị trả về
Câu hỏi ND2.DL VDC.*
Bài
tập
định
lượng
Bài
tập
thực
hành
3 Cấu
trúc
chương
trình
con
Câu
hỏi/
bài
tập
định
tính
HS biết được cấu trúc của chương trình con và khái niệm tham số hình thức
Câu hỏi ND3.DT.NB.*
HS chỉ ra được các loại biến cục bộ và biến toàn cục trong một bài toán
cụ thể
Câu hỏi ND3.DT.TH.*
Bài
tập
định
lượng
HS phân biệt được sự khác nhau giữa chương trình con và chương trình chính
Câu hỏi ND3.DL.TH.*
Bài
Trang 10tập
thực
hành
4
Thực
hiện
chương
trình
con
Câu
hỏi/
bài
tập
định
tính
HS nhận biết được tham số thực sự và cách thực hiện gọi chương trình con
Câu hỏi ND4.DT.NB.*
HS lấy được ví
dụ về sử dụng gọi hàm hoặc thủ tục đã biết trong pascal
Câu hỏi ND4.DT.TH.*
Bài
tập
định
lượng
HS chỉ ra được tham số hình thức và tham số thực sự trong một chương
trình
Câu hỏi ND4.DL.VDT.*
Bài
tập
thực
hành
Bước 4: Hệ thống câu hỏi/ bài tập đánh giá theo các mức đã mô tả.
Câu ND1.DT.HB.1: Em hãy cho biết khái niệm về lập trình và ngôn ngữ lập
trình mà em đã được học?
Câu ND1.DT.HB.2: Em hãy cho biết khái niệm về chương trình mà em đã được
học?
Câu ND1.DT.HB.3: Theo dõi SGK và cho biết khái niệm về chương trình con? Câu ND1.DT.HB.4: Cho bài toán viết chương trình tính tổng:
S= an+bm+cp+dq
Trang 11Dựa vào những kiến thức đã được học em có nhận xét như thế nào khi viết chương trình cho bài toán đã nêu?
Câu ND1.DL.HB.1: Viết chương trình tính tổng sau:
S = an+bm+cp+dq
Nêu nhận xét về các đoạn chương trình mà các nhóm đã viết?
( Hình thức chia nhóm thực hiện: nhóm 1 tính lũy thừa a n , nhóm 2 tính lũy thừa b m , nhóm 3 tính lũy thừa c p, nhóm 4 tính lũy thừa d q )
Câu ND1.DL.TH.1: Cho đoạn chương trình sau:
gt1:=1;
for i:=2 to n do gt1:=gt1*i;
gt2:=1;
for i:= 2 to m do gt2:=gt2*i;
gt3:=1;
for i:= 2 to m do gt3:=gt3*i;
gt4:=1;
for i:= 2 to m do gt4:=gt4*i;
S:= gt1 + gt2 + gt3 + gt4;
Em hãy chỉ ra đoạn chương trình thể hiện sự lặp đi lặp lại?
Câu ND1 TH.TH.1: em hãy viết chương trình thể hiện tính lặp đi lặp lại nhiều
lần của cùng một công việc?
(hình thức chia nhóm thực hiện, mỗi nhóm lấy một ví dụ cụ thể Với yêu cầu thể hiện được sự lặp lại của công việc)
Câu ND2.DT.NB.1: Nêu các loại chương trình con?
Câu ND2.DT.NB.2: Nêu các khái niệm về hàm và thủ tục?
Câu ND2.DT.VDT.1: Lấy ví dụ một số hàm và thủ tục trong pascal mà em đã
được học?
Câu ND2.DT.VDT.2: Hãy chỉ ra hàm và thủ tục cho các thao tác xử lý xâu sau:
- delete(s,vt,n)
- insert(s1,s2,vt);
- length(s);
- pos (s1, s2)
Câu ND2.DL.VDC.1: Tìm lỗi sai trong chương trình sau:
procedure hoanvi ( var a,b:byte);