KINH NGHIỆM <br />
PHÒNG GIÁO D ỤC VÀ ĐÀO TẠO KRÔNG ANA<br />
TRƯỜNG THCS BUÔN TRẤP<br />
SỬ DỤNG NGÔN NGỮ LẬP TRÌNH PASCAL ĐỂ <br />
MỤC LỤC<br />
GIẢI MỘT SỐ BÀI TOÁN Trang<br />
Phần thứ nhất: MỞ ĐẦU<br />
I. Đặt vấn đề:<br />
Lý do chọn đề tài......................................................................................................1<br />
Đối tượng nghiên cứu:..............................................................................................1<br />
Họ và tên: Nguy<br />
Phạm vi nghiên c ễn Thị Thu Thủy<br />
ứu:................................................................................................ 1<br />
Đơn vị công tác: THCS Buôn Trấp<br />
II. Mục tiêu nghiên cứu:.....................................................................................................<br />
Chức v1 ụ: Giáo viên <br />
<br />
Phần thứ hai: GIẢI QUYẾT VẤN ĐỀ<br />
I. Cơ sở lý luận của vấn đề..............................................................................................2<br />
II. Thực trạng vấn đề <br />
<br />
........................................................................................................<br />
<br />
3<br />
III. Các giải pháp đã tiến hành để giải quyết vấn đề:..................................................…5<br />
1. Bài toán 1 <br />
<br />
...................................................................................................................<br />
<br />
5<br />
2. Bài toán 2 <br />
<br />
...................................................................................................................<br />
<br />
8<br />
3. Bài toán 3 <br />
<br />
.................................................................................................................<br />
<br />
10<br />
IV. Tính mới của sáng kiến…………… ………………………….…….……………...15<br />
V. Hiệu quả SKKN: ………………… ………………………….…….…………………15<br />
Phần thứ ba: KẾT LUẬN, KIẾN NGHỊ<br />
I. Kết luận:.......................................................................................................................17<br />
II. Ý kiến đề xuất .............................................................................................................17<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
DANH MỤC CHỮ CÁI VIẾT TẮT<br />
<br />
<br />
VIẾT TẮT VIẾT ĐẦY ĐỦ<br />
Gv Giáo viên<br />
Hs Học sinh<br />
GDĐT Giáo dục – đào tạo<br />
THCS Trung học cơ sở<br />
IT Công nghệ thông tin<br />
<br />
<br />
<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 1<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
<br />
<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 2<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
PHẦN THỨ NHẤT: MỞ ĐẦU<br />
I. ĐẶT VẤN ĐỀ:<br />
<br />
Lý do chọn đề tài:<br />
Theo Trưởng Ban Kinh tế Trung ương Nguyễn Văn Bình, Cách mạng công <br />
nghiệp 4.0 (CMCN 4.0) mang lại cơ hội cho các nước đang phát triển, giúp rút ngắn quá trình <br />
công nghiệp hoá bằng cách đi tắt đón đầu, phát triển nhảy vọt lên công nghệ cao hơn.<br />
Nghị quyết 29 của BCHTW về đổi mới căn bản và toàn diện GDĐT đã chỉ ra là tiếp <br />
tục đổi mới mạnh mẽ phương pháp dạy và học theo hướng hiện đại, đề cao vai trò chủ thể <br />
hoạt động của học sinh nhằm phát huy tính tích cực, chủ động, sáng tạo và vận dụng kiến <br />
thức, kỹ năng vào giải quyết các tình huống thực tiễn cuộc sống.<br />
Bộ giáo dục đang triển khai rất nhiều công văn phục vụ đổi mới căn bản và toàn diện <br />
GD&ĐT sau năm 2018. Đổi mới phương pháp và hình thức tổ chức dạy học và kiểm tra đánh <br />
giá, đổi mới sinh hoạt chuyên môn theo hướng nghiên cứu bài học, tổ chức các kỳ thi giúp học <br />
sinh vận dụng kiến thức đã học vào giải quyết vấn đề thực tiễn, … nhằm hình thành và phát <br />
triển các năng lực cần thiết của thế kỷ 21 cho học sinh.<br />
Trong quá trình dạy học chương trình Tin học lớp 8, tôi thấy rằng, những kiến thức học <br />
sinh tiếp nhận và áp dụng vào giải các bài toán đạt kết quả chưa cao, do học sinh chưa thật sự <br />
nắm vững các bước để giải bài toán và chưa vận dụng được linh hoạt ngôn ngữ lập trình để <br />
giải bài toán. Xuất phát từ cơ sở trên tôi đã chọn đề tài “Sử dụng ngôn ngữ lâp trinh Pascal<br />
̣ ̀ <br />
̉ ải toán”.<br />
đê gi<br />
Đối tượng nghiên cứu:<br />
Tập trung nghiên cứu sử dụng ngôn ngữ lập trình Pascal để giải toán. <br />
Phạm vi nghiên cứu:<br />
Học sinh lớp 8 trường THCS Buôn Trấp<br />
Học sinh trong đội tuyển học sinh giỏi môn tin học của trường THCS Buôn Trấp.<br />
II. MỤC TIÊU NGHIÊN CỨU:<br />
Nhằm nâng cao chất lượng giảng dạy và học tập, chất lượng dạy học bộ môn tin học.<br />
Thúc đẩy phong trào thi đua học tập ở học sinh.<br />
Phát huy tính tích cực, chủ động của học sinh trong quá trình tiếp thu kiến thức.<br />
Nâng cao khả năng tự học của học sinh.<br />
Nhằm đổi mới phương pháp dạy học trong qua trình giảng dạy học sinh.<br />
Tạo điều kiện thuận lợi cho những học sinh có năng lực, có niềm đam mê, có sáng tạo <br />
trong học tập bộ môn.<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 3<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
Giải một vài bài toán trong chương trình học toán THCS và chuyển các bài toán đó sang <br />
ngôn ngữ lập trình.<br />
Làm cơ sở cho các em định hướng và chọn lựa ngành nghề thích hợp cho tương lai.<br />
<br />
<br />
PHẦN THỨ HAI: GIẢI QUYẾT VẤN ĐỀ<br />
I. CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ:<br />
Đổi mới căn bản, toàn diện giáo dục và đào tạo là đổi mới những vấn đề lớn, cốt lõi, cấp <br />
thiết, từ quan điểm, tư tưởng chỉ đạo đến mục tiêu, nội dung, phương pháp, cơ chế, chính sách, <br />
điều kiện bảo đảm thực hiện đổi mới ở tất cả các bậc học, ngành học. <br />
Phát triển nguôn l<br />
̀ ực có chất lượng cao đòi hỏi phải đổi mới căn bản, toàn diện giáo dục, <br />
đào tạo ngành nghề theo hướng mở, hội nhập, xây dựng một xã hội học tập, phát triển toàn <br />
diện năng lực, thể chất, nhân cách, đạo đức, lối sống, ý thức tôn trọng pháp luật và trách nhiệm <br />
̣<br />
công dân. Môt trong nh ưng gi<br />
̃ ải pháp nhăm nâng cao ch<br />
̀ ất chất lượng nguồn lực là phải đổi mới <br />
phương pháp dạy hoc.̣<br />
Đổi mới phương pháp dạy hoc c ̣ ủa người thầy bắt nguồn từ yêu cầu học tập của ngươì <br />
̣<br />
hoc. Ph ương pháp này nhấn mạnh quá trình học tập và tiếp thu chứ không chú trọng đến kết <br />
quả hoc tâp. Đây cung là ph<br />
̣ ̣ ̃ ương pháp giúp cho ngươi hoc phát tri<br />
̀ ̣ ển kỹ năng tự học và kỹ năng <br />
giải quyết vấn đề. Sử dụng phương pháp học tập tích cực, ngươi day đóng vai trò là “ng<br />
̀ ̣ ười <br />
hướng dẫn” giúp ngươi h ̀ ọc thu được kết luận đúng thông qua sự chỉ dẫn, khuyến khích cũng <br />
như thách thức họ đạt được mục đích học tập. Phương pháp học tập tích cực có ý nghĩa quan <br />
trọng giúp học sinh biết cách tìm, tra cứu tài liệu thông tin, tổ chức chúng, thực nghiệm và kiểm <br />
nghiệm các câu trả lời của mình thông qua ý kiến đánh giá của người thầy và của nhiều người.<br />
Chính vì thế để nâng cao chất lượng học tập của học sinh đối với môn học lập trình và <br />
giải các bài toán bằng ngôn ngữ lập trình chúng ta cần nắm được rõ các khái niệm sau:<br />
Ngôn ngữ lập trình (programming language) là dạng ngôn ngữ được chuẩn hóa theo một <br />
hệ thống các quy tắc riêng, sao cho qua đó người lập trình có thể mô tả các chương trình làm <br />
việc dành cho thiết bị điện tử mà cả con người và các thiết bị đó đều hiểu được.<br />
Pascal là một ngôn ngữ lập trình máy tính thuộc dạng mệnh lệnh và thủ tục, <br />
được Niklaus Wirth phát triển vào năm 1970 là ngôn ngữ lập trình đặc biệt thích hợp cho <br />
kiểu lập trình cấu trúc và cấu trúc dữ liệu. Được đặt theo tên của nhà toán học, triết gia và nhà <br />
vật lí người Pháp, Blaise Pascal.<br />
Pascal được phát triển theo khuôn mẫu của ngôn ngữ ALGOL 60. Wirth đã phát triển một <br />
số cải tiến cho ngôn ngữ này như một phần của các đề xuất ALGOL X, nhưng chúng không <br />
được chấp nhận và Ngôn ngữ Pascal được phát triển riêng biệt và phát hành vào năm 1970. Một <br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 4<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
phiên bản cải tiến được gọi là Object Pascal được thiết kế cho lập trình hướng đối tượng được <br />
phát triển vào năm 1985, được sử dụng bởi Apple Computer và Borland vào cuối những năm <br />
1980 và sau đó phát triển thành ngôn ngữ Delphi trên nền tảng Microsoft Windows. Wirth đồng <br />
thời cũng xây dựng Modula2 và Oberon, là những ngôn ngữ tương đồng với Pascal. Oberon <br />
cũng hỗ trợ kiểu lập trình hướng đối tượng.<br />
Một bài toán đố là một vấn đề có thể được giải quyết bằng toán học, thường được sử <br />
dụng trong quá trình dạy toán để giúp học sinh hiểu sự liên quan giữa các vấn đề đời sống <br />
thường ngày với các khái niệm và ký hiệu toán học.<br />
Để giải một bài toán trong ngôn ngữ lập trình chúng ta cần nắm vững các bước sau: <br />
+ Xác định bài toán<br />
+ Mô tả thuật toán<br />
+ Viết chương trình<br />
+ Hiệu chỉnh.<br />
Vậy, xác định bài toán là xác định rõ 2 thành phần Input và Output và mối quan hệ giữa <br />
chúng để có thể lựa chọn thuật toán và ngôn ngữ lập trình thích hợp.<br />
Mô tả thuật toán là bước quan trọng nhất để giải bài toán. Có thể có nhiều thuật toán để <br />
giải một bài toán, cần thiết kế hoặc chọn 1 thuật toán phù hợp để giải bài toán cho trước.<br />
Viết chương trình là việc lựa chọn cách tổ chức dữ liệu và sử dụng ngôn ngữ lập trình <br />
để diễn đạt đúng thuật toán. Khi chọn ngôn ngữ lập trình nào phải tuân theo quy định ngữ pháp <br />
của ngôn ngữ đó.<br />
Hiệu chỉnh sau khi viết xong, chương trình cần phải được thử bằng một số bộ test tiêu <br />
biểu. Nếu phát hiện sai sót thì phải sửa chương trình rồi thử lại.<br />
Việc áp dụng tốt các khái niệm của ngôn ngữ lập trình cũng như cách làm của một số bài <br />
toán sẽ giúp học sinh thực hiện việc giải một bài toán nhanh hơn. Tạo sự hứng thú học tập bộ <br />
môn tin học lập trình hơn. Nâng cao nhận thức cũng như sự yêu mến với bộ môn lập trình.<br />
II. THỰC TRẠNG VẤN ĐỀ:<br />
Như chúng ta đã biết, tin học nói chung và máy tính nói riêng có mặt ở hầu khắp mọi nơi: <br />
các cơ quan, công sở, xí nghiệp, nhà máy, trường học, khu vui chơi giải trí, … <br />
Vì vậy tin học cũng tác động rất lớn đến xã hội: <br />
+ Giúp tăng hiệu quả sản xuất, hiệu quả cung cấp dịch vụ và quản lí. <br />
<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 5<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
+ Sự phát triển của tin học cũng làm thay đổi nhận thức và cách thức tổ chức, vận hành <br />
các hoạt động xã hội.<br />
+ Thay đổi phong cách sống của con người.<br />
Dựa vào các con số thông kê của Bộ Thông tin và truyền thông. Việt Nam thiếu tới <br />
500.000 nhân viên công nghệ thông tin. Và mức lương của ngành Công nghệ thông tin đứng top <br />
3 trong tất cả các ngành ở Việt Nam. Có thể thấy rằng việc xin được việc của ngành lập trình <br />
là khá dễ dàng. Bởi nguồn nhân lực đang thiếu cùng với đó là sự phát triển của ngành công <br />
nghệ. Khiến mọi thứ cũng thay đổi nhu cầu cũng từ đó mà tăng cao.<br />
Để định hướng nghề nghiệp cho tương lai của học sinh đáp ứng được nhu cầu của thời <br />
đại thì trước hết học sinh cần phải học tốt các môn học nhất là bộ môn ngôn ngữ lập trình <br />
pascal. Vì đây chính là ngôn ngữ đầu tiên, tiền đề cho các ngôn ngữ khác mà học sinh sẽ học. <br />
Nhưng hiện nay quá trình học tập và nghiên cứu bộ môn lập trình vẫn gặp rất nhiều khó khăn <br />
như:<br />
Đời sống của người dân trong nhiều thôn, buôn còn nhiều khó khăn, nên việc đầu tư cho <br />
con em mình trong học tập còn hạn chế.<br />
Phương tiện dạy và học, đặc biệt là phòng máy ở một số trường còn thiếu, bị hư hỏng <br />
nhiều.<br />
Một số giáo viên vẫn chưa linh hoạt khi áp dụng các phương pháp dạy học mới vào quá <br />
trình giảng dạy cho học sinh.<br />
Môn Tin học lập trình là môn học khó nên vẫn còn có học sinh chưa thật sự đam mê môn <br />
học, một số em còn thụ động trong quá trình tiếp thu kiến thức.<br />
Học sinh nắm các bước để giải một bài toán một cách mơ hồ nên chưa thể áp dụng để <br />
giải các bài toán khác.<br />
Học sinh tiếp nhận kiến thức một cách thụ động nên chưa khắc sâu được kiến thức.<br />
Tư duy toán học của các học sinh chưa thật đồng đều.<br />
Học sinh chưa linh động trong việc áp dụng toán học vào lập trình. Chưa nắm rõ các <br />
bước để giải một bài toán trong ngôn ngữ lập trình và các từ khóa để thể hiện các bài toán đó <br />
nên mức độ hoàn thành bài làm của giáo viên còn hạn chế minh họa trong bảng số liệu sau:<br />
<br />
Mức độ hoàn thành bài tập được giáo viên đưa ra<br />
Tổng<br />
Số Hoàn Hoàn Chưa HS Tự đề xuất <br />
thành thành hoàn vấn đề tìm <br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 6<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
chương <br />
chương thành hướng giải <br />
trình <br />
trình vẫn chương quyết ở trên <br />
Lớp HS không có <br />
gặp lỗi trình lớp<br />
lỗi<br />
TS % TS % TS % TS %<br />
8a3 38 3 7.9 17 47.7 18 47.4 3 7.9<br />
<br />
8a5 42 4 9.5 18 42.9 20 47.6 5 11.9<br />
<br />
<br />
<br />
<br />
III. CÁC GIẢI PHÁP ĐÃ TIẾN HÀNH ĐỂ GIẢI QUYẾT VẤN ĐỀ:<br />
Như chúng ta đã biết việc khuyến khích học sinh yêu thích bộ môn là một quá trình lâu <br />
dài, cần nhiều thời gian. Vì vậy khi được phân công giảng dạy tại lớp nào đó, ngoài việc truyền <br />
thụ kiến thức cơ bản cho toàn lớp, mỗi giáo viên chúng ta nên chú trọng vào việc tìm kiếm, lồng <br />
ghép những kiến thức mở rộng, nâng cao hoặc những bài toán trí tuệ nhanh vào tiết dạy hoặc <br />
bài kiểm tra. <br />
Giống như các môn học khác, môn tin Học của chúng ta, muốn đạt được kết quả mỹ <br />
mãn, trước hết mỗi giáo viên phải thực sự đam mê với công việc, phải luôn trau dồi và nâng cao <br />
kiến thức cho bản thân. Mỗi giáo viên phải:<br />
+ Cần chọn lọc những phương pháp dạy học tích cực dễ hiểu nhất để hướng dẫn cho <br />
học sinh không nên máy móc theo hướng dẫn.<br />
+ Giúp học sinh định hướng và nhận ra cách giải và thuật toán của các dạng bài tập cơ <br />
bản.<br />
+ Hướng dẫn học sinh vận dụng được các công thức toán học vào giải một bài toán lập <br />
trình. Điều này giúp các em nhận biết các dạng bài tập và chọn hướng giải cho phù hợp.<br />
+ Định hướng cho học sinh các bước để giải một bài toán. Yêu cầu học sinh đưa ra cách <br />
giải riêng cho bài toán của mình. <br />
+ Hướng dẫn học sinh cách trình bày, cũng như cách lập luận bài làm, để khi các em làm <br />
bài đạt kết quả tốt nhất.<br />
Trong quá trình giảng dạy, mỗi giáo viên phải tổng hợp được những kiến thức cơ bản, <br />
trọng tâm, dễ nhớ để đưa vào kiến thức của các em. Chẳng hạn như một số bài toán sau:<br />
<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 7<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
2.1. Bài toán 1: Thử viết chương trình nhập các số nguyên X, và Y, in giá trị của X và Y <br />
ra màn hình. Sau đó hoán đổi các giá trị của X và Y rồi lại in ra màn hình giá trị của X và Y. (Bài <br />
2, SGK tin học dành cho THCS quyển 3 trang 35).<br />
Do đây là chương trình đầu tiên mà học sinh được tự nghiên cứu trong chương trình học <br />
ngôn ngữ lập trình pascal nên t không yêu cầu học sinh phải hiểu rõ tất cả các câu lệnh của <br />
chương trình, chỉ cần học sinh bước đầu làm quen với cách khai báo và sử dụng biến trong <br />
chương trình thôi. Vì thế tiến trình dạy học sẽ diễn ra như sau:<br />
Hoạt động giáo viên: Hoạt động học sinh:<br />
Gv: Bạn nào có thể tóm tắt bài toán? Hs: <br />
+ Nhập giá trị của X và Y<br />
+ In giá trị của X và Y ra màn hình<br />
+ Hoán đổi giá trị của X và Y<br />
+ In lại giá trị của X và Y ra màn hình.<br />
Gv: dựa vào tóm tắt bài toán, bạn nào có thể Hs: Biến x để lưu giá trị của X, biến y để lưu <br />
cho cô biết bài toán này cần sử dụng những giá trị của Y.<br />
biến nào để lưu giá trị?<br />
Gv: Ngoài hai biến x, y ra chúng ta còn cần Hs suy nghĩ và trả lời theo hiểu biết của <br />
sử dụng những biến nào nữa? mình.<br />
Gv: muốn biết chương trình còn cần sử dụng <br />
những biến nào nữa thì ta cần phải biết cách <br />
Hs lắng nghe.<br />
giải bài toán này. Sau khi đã biết cách giải <br />
chúng ta sẽ dễ dàng biết được bài toán này có <br />
những biến nào.<br />
Gv: Để có thể hoán đổi được giá trị của hai <br />
biến X và Y. Chúng ta cùng nghiên cứu một trò <br />
chơi như sau: Cô có hai cốc nước màu xanh là <br />
cốc đánh số 1 và màu đỏ lần được được đánh <br />
số 2. Làm cách nào để hoán đổi hai cốc nước <br />
với nhau, sao cho cốc màu đỏ được đánh số 1, <br />
cốc màu xanh được đánh số 2? Cho phép sử <br />
dụng một cốc phụ đánh số 3 không có nước.<br />
Gv: Chia học sinh trong lớp ra thành 4 nhóm. <br />
Mỗi nhóm có 3 cốc với 2 cốc là màu xanh và <br />
Hs các nhóm thực hiện quá trình đổi nước <br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 8<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
đỏ với cốc số 3 là cốc không có nước. Yêu cầu trong các cốc.<br />
các nhóm học sinh tiến hành thảo luận theo <br />
nhóm. Tìm ra cách để hoán đổi nước trong các <br />
cốc.<br />
Gv quan sát nhắc nhở các nhóm thực hành <br />
cẩn thận và nghiên túc tránh đổ nước gây mất <br />
vệ sinh.<br />
Gv yêu cầu các nhóm báo cáo kết quả thảo Các nhóm học sinh báo cáo kết quả làm <br />
luận của nhóm mình. Thực hiện cho cả lớp được.<br />
cùng quan sát. + Lấy cốc thứ nhất đổ qua cốc thứ 3<br />
+ Lấy cốc thứ hai đổ qua cốc thứ nhất<br />
+ Nhất cốc thứ 3 đổ qua cốc thứ hai<br />
Gv nhận xét quá trình thực hành của các Hs lắng nghe.<br />
nhóm đồng thời nhắc nhở về ý thức thực hành <br />
của một số nhóm.<br />
Gv: Cách chúng ta đổ nước vào cốc thứ 3 <br />
Hs: Phép toán gán<br />
giống như phép toán nào chúng ta vừa học <br />
trong bài 4: sử dụng biến và hằng trong <br />
chương trình? Hs: Chúng ta có thể hoán đổi hai giá trị của X <br />
Gv: tương tự như vậy chúng ta có thể hoán và Y. Cách thực hiện như sau:<br />
đổi giá trị của hai biến X và Y không? Chúng + z:=x;<br />
ta thực hiện như thế nào? + x:=y;<br />
+ y:=z;<br />
Hs: ba biến, đó là biến x, y, z<br />
Gv: Vậy bài toán này chúng ta cần sử dụng <br />
bao nhiêu biến? Đó là những biến nào?<br />
Hs: số nguyên Integer;<br />
Gv: Những biến này có kiểu dữ liệu là gì?<br />
Hs: Var<br />
Gv: Vậy khai báo biến ta sử dụng từ khóa <br />
Hs: Var x,y,z:integer;<br />
nào?<br />
Hs quan sát<br />
Gv: Hãy khi báo biến cho bài toán trên?<br />
Gv cho học sinh tham khảo chương trình sau:<br />
<br />
<br />
<br />
Người viết: Nguyễn Thị Thu Thủy Trang 9<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
<br />
<br />
<br />
Hs lắng nghe và quan sát.<br />
<br />
<br />
<br />
<br />
Gv hướng dẫn thêm cho học sinh ý nghĩa của Hs làm theo yêu cầu của giáo viên.<br />
một số câu lệnh trong chương trình. Dịch và <br />
chạy chương trình cho học sinh quan sát.<br />
Gv yêu cầu học sinh gõ lại đoạn chương <br />
trình trên vào máy, dịch và chạy chương trình.<br />
Hs lắng nghe.<br />
Gv quan sát và giúp đỡ các nhóm học sinh <br />
thực hành.<br />
Gv: Vậy chúng ta đã hoàn thành giải một bài <br />
toán trong ngôn ngữ lập trình Pascal. Quá trình <br />
chúng ta tóm tắt bài toán cũng chính là quá trình <br />
xác định bài toán. Quá trình tìm cách hoán đổi <br />
hai giá trị của X và Y chính là việc mô tả <br />
thuật toán. Viết chương trình, dịch và chạy <br />
chương trình là các bước cuối cùng để hoàn <br />
thiện giải một bài toán. Vậy chi tiết của các <br />
bước này như thế nào chúng ta sẽ cùng nghiên <br />
cứu trong bài 5: Từ bài toán đến chương trình.<br />
Quá trình dạy học như thế này, yêu cầu giáo viên phải nghiên cứu bài thật kỹ trước khi <br />
lên lớp. Tìm ra phương pháp hợp lý nhất để hướng dẫn học sinh làm việc, trong những tiết học <br />
như thế này giáo viên sẽ hoạt động nhiều hơn nhưng chỉ với vai trò là đưa ra vấn đề và yêu cầu <br />
học sunh phải giải quyết vấn đề mà giáo viên đưa ra. Như vậy học sinh sẽ là người làm chủ <br />
kiến thức của mình, học sinh chủ động hơn trong quá trình tiếp thu kiến thức.<br />
2.1. Bài toán 2: Tìm số lớn nhất trong dãy A các số a1, a2, a3, …, an cho trước. (Ví dụ 6, <br />
SGK tin học dành cho THCS quyển 3 trang 43)<br />
Để có thể giải được bài toán này giáo viên có thể tiến hành giải quyết như sau:<br />
Người viết: Nguyễn Thị Thu Thủy Trang 10<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
Hoạt động giáo viên Hoạt động học sinh<br />
Gv: hãy xác định bài toán trên Hs: <br />
+ Input: Dãy A các số a1, a2, a3, …, an <br />
(n>=1)<br />
+ Output: Giá trị MAX =max(a1, a2, <br />
…,an)<br />
Các nhóm học sinh thực hiện hoạt <br />
Gv: Để có thể đưa ra các bước mô tả cho thuật toán <br />
động tìm bạn cao nhất trong nhóm của <br />
này. Chúng ta cùng thực hiện một hoạt động tìm bạn <br />
mình, viết cách thực hiện vào bảng <br />
lớn nhất trong nhóm. Yêu cầu của hoạt động này là <br />
nhóm.<br />
các nhóm có thể dùng tất cả mọi dụng cụ có thể, hãy <br />
xác định bạn cao nhất trong nhóm của mình. Nêu rõ <br />
cách thực hiện vào bảng nhóm. Hs: <br />
+ Nhóm 1 dùng thước đo chiều cao của <br />
các bạn, bạn nào có số đo cao hơn thì <br />
bạn đó sẽ là người cao nhất.<br />
+ Nhóm 2 xếp hàng các bạn theo thứ tự <br />
từ thấp đến cao, bạn nào đứng cuối <br />
cùng sẽ là người cao nhất.<br />
+ Nhóm 3 xem bạn đầu tiên là cao nhất, <br />
Gv tổng hợp kết quả làm việc của các nhóm lần lượt so sánh bạn đầu tiên với các <br />
bạn còn lại, nếu bạn tiếp theo cao hơn <br />
bạn đầu tiên thì ta giữ lại bạn cao hơn. <br />
So sánh như vậy đến hết nhóm, bạn <br />
cuối cùng còn lại ở trên chính là bạn cao <br />
Gv yêu cầu các nhóm học sinh đưa ra nhận xét cho nhất.<br />
từng cách làm của các nhóm.<br />
+ Nhóm 4 ….<br />
Gv: tại sao các bạn cùng lớp, cùng độ tuổi lại có <br />
Các nhóm học sinh sẽ biện luận để <br />
chiều cao khác nhau?<br />
bảo vệ ý kiến của nhóm mình.<br />
Hs: Các yếu tố ảnh hưởng đến sự phát <br />
triển chiều cao:<br />
+ Yếu tố gen di truyền<br />
+ Yếu tố dinh dưỡng<br />
Gv: Ngoài yếu tố gen di truyền, chúng ta phải làm + Yếu tố vận động<br />
Người viết: Nguyễn Thị Thu Thủy Trang 11<br />
Kinh nghiệm “Sử dụng ngôn ngữ lập trình Pascal để giải toán”<br />
<br />
gì để cũng cố chiều cao của mình? + Yếu tố giới tính.<br />
Gv: Ngoài các yếu tố trên. Ở mỗi độ tuổi khác nhau Hs: ăn uống và tập luyện thể dục thể <br />
thì quá trình phát triển chiều cao cũng sẽ khác nhau… thao hợp lý.<br />
Lồng ghép giáo dục giới tính cho học sinh. Hs: lắng nghe.<br />
Gv chốt lại: trong các cách tìm kiếm này, cách nào <br />
cũng đúng và cuối cùng cũng đều đưa ra kết quả là <br />
Hs:<br />
bạn cao nhất. Nhưng cách để có thể viết và đưa ra <br />
câu lệnh cho chương trình máy tính hoạt động nhanh + Bước 1: MAX