Tải bản đầy đủ (.doc) (21 trang)

Sử dụng ngôn ngữ lập trình pascal để giải toán

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (265.79 KB, 21 trang )

PHỊNG GIÁO
DỤC VÀ
ĐÀO TẠO KRƠNG ANA
KINH
NGHIỆM
TRƯỜNG THCS BN TRẤP

SỬ DỤNG NGƠN NGỮ LẬP TRÌNH PASCAL ĐỂ
GIẢI MỘT SỐ BÀI TỐN

MỤC LỤC

Trang

Phần thứ nhất: MỞ ĐẦU
I. Đặt vấn đề:
Lý do chọn đề tài........................................................................................................1
Đối tượng nghiên cứu:...............................................................................................1

Họ và tên: Nguyễn Thị Thu Thủy
Đơn vị công tác: THCS Buôn Trấp
II. Mục tiêu nghiên
cứu: vụ:
.....................................................................................................1
Chức
Giáo viên
Phạm vi nghiên cứu:................................................................................................. 1

Phần thứ hai: GIẢI QUYẾT VẤN ĐỀ
I.


Cơ sở lý luận của vấn đề...........................................................................................2

II. Thực trạng vấn đề..........................................................................................................3
III. Các giải pháp đã tiến hành để giải quyết vấn đề:......................................................…5
1. Bài toán 1...................................................................................................................5
2. Bài toán 2...................................................................................................................8
3. Bài tốn 3.................................................................................................................10
IV. Tính mới của sáng kiến…………… ………………………….…….……………...15
V. Hiệu quả SKKN: ………………… ………………………….…….…………………15
Phần thứ ba: KẾT LUẬN, KIẾN NGHỊ
I. Kết luận:........................................................................................................................17
II. Ý kiến đề xuất ...............................................................................................................17


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
DANH MỤC CHỮ CÁI VIẾT TẮT
VIẾT TẮT
Gv
Hs
GD-ĐT
THCS
IT

Người viết: Nguyễn Thị Thu Thủy

VIẾT ĐẦY ĐỦ
Giáo viên
Học sinh
Giáo dục – đào tạo
Trung học cơ sở

Công nghệ thông tin

Trang 1


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
PHẦN THỨ NHẤT: MỞ ĐẦU

I. ĐẶT VẤN ĐỀ:
Lý do chọn đề tài:
Theo Trưởng Ban Kinh tế Trung ương Nguyễn Văn Bình, Cách mạng cơng
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 q trình
cơng nghiệp hố 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.
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 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ể 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 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.
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
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 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 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 triển các
năng lực cần thiết của thế kỷ 21 cho học sinh.
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
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ự 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 để giải bài
tốn. Xuất phát từ cơ sở trên tơi đã chọn đề tài “Sử dụng ngơn ngữ lập trình Pascal để giải
toán”.

Đối tượng nghiên cứu:
- Tập trung nghiên cứu sử dụng ngơn ngữ lập trình Pascal để giải tốn.


Phạm vi nghiên cứu:
- Học sinh lớp 8 trường THCS Buôn Trấp
- 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.
II. MỤC TIÊU NGHIÊN CỨU:
- 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.
- Thúc đẩy phong trào thi đua học tập ở học sinh.
- 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.
- Nâng cao khả năng tự học của học sinh.
- Nhằm đổi mới phương pháp dạy học trong qua trình giảng dạy học sinh.
- 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
trong học tập bộ mơn.
- Giải một vài bài tốn trong chương trình học tốn THCS và chuyển các bài tốn đó sang
ngơn ngữ lập trình.
- 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.
Người viết: Nguyễn Thị Thu Thủy
Trang 2


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
PHẦN THỨ HAI: GIẢI QUYẾT VẤN ĐỀ
I.
CƠ SỞ LÝ LUẬN CỦA VẤN ĐỀ:
Đổ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
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, đ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.
Phát triển nguồn lự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, đà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 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 công dân. Một
trong những giải pháp nhằm nâng cao chất chất lượng nguồn lực là phải đổi mới phương pháp dạy

học.
Đổi mới phương pháp dạy học của người thầy bắt nguồn từ yêu cầu học tập của người học.
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 quả học tập.
Đây cũng là phương pháp giúp cho người học phát triển kỹ năng tự học và kỹ năng giải quyết vấn
đề. Sử dụng phương pháp học tập tích cực, người dạy đóng vai trị là “người 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 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 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 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.
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à giải
các bài tố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:
Ngơn ngữ lập trình (programming language) là dạng ngơn ngữ được chuẩn hóa theo một 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 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.
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, đượ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 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à vật lí người
Pháp, Blaise Pascal.
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 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 đượ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 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 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 1980 và sau đó phát triển
thành ngơn ngữ Delphi trên nền tảng Microsoft Windows. Wirth đồng thời cũng xây dựng Modula2 và Oberon, là những ngôn ngữ tương đồng với Pascal. Oberon cũng hỗ trợ kiểu lập trình hướng
đối tượng.
Người viết: Nguyễn Thị Thu Thủy

Trang 3



Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
Một bài tốn đố là một vấn đề có thể được giải quyết bằng toán học, thường được sử dụng
trong q trình dạy tốn để giúp học sinh hiểu sự liên quan giữa các vấn đề đời sống thường ngày
với các khái niệm và ký hiệu toán học.
Để giải một bài tốn trong ngơn ngữ lập trình chúng ta cần nắm vững các bước sau:
+ Xác định bài toán
+ Mơ tả thuật tốn
+ Viết chương trình
+ Hiệu chỉnh.
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
chúng để có thể lựa chọn thuật tốn và ngơn ngữ lập trình thích hợp.
Mơ tả thuật tốn là bước quan trọng nhất để giải bài tốn. Có thể có nhiều thuật tốn để 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.
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 để
diễn đạt đúng thuật tốn. Khi chọn ngơn ngữ lập trình nào phải tn theo quy định ngữ pháp của
ngơn ngữ đó.
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 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.
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
tố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ộ môn
tin học lập trình hơn. Nâng cao nhận thức cũng như sự u mến với bộ mơn lập trình.
II. THỰC TRẠNG VẤN ĐỀ:
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:
các cơ quan, cơng sở, xí nghiệp, nhà máy, trường học, khu vui chơi giải trí, …
Vì vậy tin học cũng tác động rất lớn đến xã hội:
+ Giúp tăng hiệu quả sản xuất, hiệu quả cung cấp dịch vụ và quản lí.
+ 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 các
hoạt động xã hội.
+ Thay đổi phong cách sống của con người.
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 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 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 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 nghệ. Khiến mọi thứ
cũng thay đổi nhu cầu cũng từ đó mà tăng cao.
Người viết: Nguyễn Thị Thu Thủy
Trang 4


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
Để đị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 đạ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 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. Nhưng hiện nay
q 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 như:
Đời sống của người dân trong nhiều thơn, bn cịn nhiều khó khăn, nên việc đầu tư cho con
em mình trong học tập còn hạn chế.
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 nhiều.
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 q trình
giảng dạy cho học sinh.
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
học, một số em cịn thụ động trong quá trình tiếp thu kiến thức.
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 để giải
các bài toán khác.
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.
Tư duy toán học của các học sinh chưa thật đồng đều.
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 bước
để giải một bài tốn trong ngơn ngữ lập trình và các từ khóa để thể hiện các bài tốn đó nên mức độ
hồ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:
Mức độ hoàn thành bài tập được giáo viên đưa ra
Hồn
thành


Lớp

Tổng

chương

Số HS

trình
khơng có
lỗi

8a3

38

TS
3

8a5

42

4

Hồn

Chưa


HS Tự đề xuất

thành

hồn

vấn đề tìm

chương

thành

hướng giải

trình vẫn

chương

quyết ở trên

gặp lỗi

trình

lớp

%
7.9

TS

17

%
47.7

TS
18

%
47.4

TS
3

%
7.9

9.5

18

42.9

20

47.6

5

11.9


III. CÁC GIẢI PHÁP ĐÃ TIẾN HÀNH ĐỂ GIẢI QUYẾT VẤN ĐỀ:
Người viết: Nguyễn Thị Thu Thủy

Trang 5


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
- Như chúng ta đã biết việc khuyến khích học sinh u thích bộ mơn là một q trình lâu 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 đó, ngồi việc truyền 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 ghép
những kiến thức mở rộng, nâng cao hoặc những bài tốn trí tuệ nhanh vào tiết dạy hoặc bài kiểm
tra.
- 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ỹ 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 kiến
thức cho bản thân. Mỗi giáo viên phải:
+ 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 học
sinh khơng nên máy móc theo hướng dẫn.
+ 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ơ bản.
+ Hướng dẫn học sinh vận dụng được các công thức tốn học vào giải một bài tốn lập 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.
+ Đị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 giải
riêng cho bài toán của mình.
+ 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 bài
đạt kết quả tốt nhất.
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, 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:
2.1. Bài tố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 ra
màn hình. Sau đó hố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 2,
SGK tin học dành cho THCS quyển 3 trang 35).

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
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 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 chương trình
thơi. Vì thế tiến trình dạy học sẽ diễn ra như sau:
Hoạt động giáo viên:
- Gv: Bạn nào có thể tóm tắt bài tốn?

Hoạt động học sinh:
- Hs:
+ Nhập giá trị của X và Y
+ In giá trị của X và Y ra màn hình
+ Hốn đổi giá trị của X và Y
+ In lại giá trị của X và Y ra màn hình.

- Gv: dựa vào tóm tắt bài tốn, bạn nào có thể - Hs: Biến x để lưu giá trị của X, biến y để lưu
cho cơ biết bài tốn này cần sử dụng những biến giá trị của Y.
nào để lưu giá trị?
Người viết: Nguyễn Thị Thu Thủy
Trang 6


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
- Gv: Ngồi hai biến x, y ra chúng ta còn cần sử
dụng những biến nào nữa?
- Hs suy nghĩ và trả lời theo hiểu biết của mình.
- Gv: muốn biết chương trình cịn cần sử dụng
những biến nào nữa thì ta cần phải biết cách giải
- Hs lắng nghe.
bài toán này. Sau khi đã biết cách giải chúng ta
sẽ dễ dàng biết được bài tốn này có những biến

nào.
- Gv: Để có thể hốn đổi được giá trị của hai
biến X và Y. Chúng ta cùng nghiên cứu một trị
chơi như sau: Cơ có hai cốc nước màu xanh là
cốc đánh số 1 và màu đỏ lần được được đánh số
2. Làm cách nào để hoán đổi hai cốc nước với
nhau, sao cho cốc màu đỏ được đánh số 1, cốc
màu xanh được đánh số 2? Cho phép sử dụng
một cốc phụ đánh số 3 khơng có nước.
- Gv: Chia học sinh trong lớp ra thành 4 nhóm.
Mỗi nhóm có 3 cốc với 2 cốc là màu xanh và đỏ
- Hs các nhóm thực hiện q trình đổi nước
với cốc số 3 là cốc khơng có nước. u cầu các
trong các cốc.
nhóm học sinh tiến hành thảo luận theo nhóm.
Tìm ra cách để hốn đổi nước trong các cốc.
- Gv quan sát nhắc nhở các nhóm thực hành cẩn
thận và nghiên túc tránh đổ nước gây mất vệ
sinh.
- Gv yêu cầu các nhóm báo cáo kết quả thảo
luận của nhóm mình. Thực hiện cho cả lớp cùng
- Các nhóm học sinh báo cáo kết quả làm được.
quan sát.
+ Lấy cốc thứ nhất đổ qua cốc thứ 3
+ Lấy cốc thứ hai đổ qua cốc thứ nhất
+ Nhất cốc thứ 3 đổ qua cốc thứ hai
- Gv nhận xét q trình thực hành của các nhóm
đờng thời nhắc nhở về ý thức thực hành của một - Hs lắng nghe.
số nhóm.
- Gv: Cách chúng ta đổ nước vào cốc thứ 3

giống như phép toán nào chúng ta vừa học trong - Hs: Phép toán gán
bài 4: sử dụng biến và hằng trong chương trình?
- Gv: tương tự như vậy chúng ta có thể hốn đổi
- Hs: Chúng ta có thể hoán đổi hai giá trị của X
giá trị của hai biến X và Y không? Chúng ta
Người viết: Nguyễn Thị Thu Thủy
Trang 7


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
thực hiện như thế nào?

và Y. Cách thực hiện như sau:
+ z:=x;
+ x:=y;

- Gv: Vậy bài toán này chúng ta cần sử dụng bao + y:=z;
nhiêu biến? Đó là những biến nào?
- Hs: ba biến, đó là biến x, y, z
- Gv: Những biến này có kiểu dữ liệu là gì?
- Gv: Vậy khai báo biến ta sử dụng từ khóa nào?

- Hs: số nguyên Integer;

- Gv: Hãy khi báo biến cho bài toán trên?

- Hs: Var

- Gv cho học sinh tham khảo chương trình sau:


- Hs: Var x,y,z:integer;
- Hs quan sát

- Gv hướng dẫn thêm cho học sinh ý nghĩa của
một số câu lệnh trong chương trình. Dịch và - Hs lắng nghe và quan sát.
chạy chương trình cho học sinh quan sát.
- Gv yêu cầu học sinh gõ lại đoạn chương trình
trên vào máy, dịch và chạy chương trình.
- Gv quan sát và giúp đỡ các nhóm học sinh
thực hành.

- Hs làm theo yêu cầu của giáo viên.

- Gv: Vậy chúng ta đã hoàn thành giải một bài
tốn trong ngơn ngữ lập trình Pascal. Q trình
chúng ta tóm tắt bài tốn cũng chính là q trình - Hs lắng nghe.
xác định bài tốn. Q trình tìm cách hốn đổi
hai giá trị của X và Y chính là việc mơ tả thuật
tốn. Viết chương trình, dịch và chạy chương
trình là các bước cuối cùng để hồn thiện giải
một bài toán. Vậy chi tiết của các bước này như
thế nào chúng ta sẽ cùng nghiên cứu trong bài 5:
Người viết: Nguyễn Thị Thu Thủy

Trang 8


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
Từ bài tốn đến chương trình.
- Q 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 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 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 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ủ 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.
2.1. Bài tố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,
SGK tin học dành cho THCS quyển 3 trang 43)
Để có thể giải được bài tốn này giáo viên có thể tiến hành giải quyết như sau:
Hoạt động giáo viên
- Gv: hãy xác định bài toán trên

Hoạt động học sinh
- Hs:
+ Input: Dãy A các số a1, a2, a3, …, an
(n>=1)
+ Output: Giá trị MAX =max(a1, a2,
…,an)

- Gv: Để có thể đưa ra các bước mơ tả cho thuật toán
này. Chúng ta cùng thực hiện một hoạt động tìm bạn
lớn nhất trong nhóm. u cầu của hoạt động này là các
nhóm có thể dùng tất cả mọi dụng cụ có thể, hãy xác
định bạn cao nhất trong nhóm của mình. Nêu rõ cách
thực hiện vào bảng nhóm.

- Các nhóm học sinh thực hiện hoạt động
tìm bạn cao nhất trong nhóm của mình,
viết cách thực hiện vào bảng nhóm.
- Hs:
+ Nhóm 1 dùng thước đo chiều cao của
các bạn, bạn nào có số đo cao hơn thì bạn

đó sẽ là người cao nhất.
+ Nhóm 2 xếp hàng các bạn theo thứ tự từ
thấp đến cao, bạn nào đứng cuối cùng sẽ
là người cao nhất.

- Gv tổng hợp kết quả làm việc của các nhóm

+ Nhóm 3 xem bạn đầu tiên là cao nhất,
lần lượt so sánh bạn đầu tiên với các bạn
còn lại, nếu bạn tiếp theo cao hơn bạn đầu
tiên thì ta giữ lại bạn cao hơn. So sánh
như vậy đến hết nhóm, bạn cuối cùng cịn
lại ở trên chính là bạn cao nhất.

+ Nhóm 4 ….
- Gv yêu cầu các nhóm học sinh đưa ra nhận xét cho
- Các nhóm học sinh sẽ biện luận để bảo
từng cách làm của các nhóm.
vệ ý kiến của nhóm mình.
Người viết: Nguyễn Thị Thu Thủy
Trang 9


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
- Gv: tại sao các bạn cùng lớp, cùng độ tuổi lại có - Hs: Các yếu tố ảnh hưởng đến sự phát
chiều cao khác nhau?
triển chiều cao:
+ Yếu tố gen di truyền
+ Yếu tố dinh dưỡng
+ Yếu tố vận động

+ Yếu tố giới tính.
- Gv: Ngồi yếu tố gen di truyền, chúng ta phải làm gì - Hs: ăn uống và tập luyện thể dục thể
để cũng cố chiều cao của mình?
thao hợp lý.
- Gv: Ngồi các yếu tố trên. Ở mỗi độ tuổi khác nhau - Hs: lắng nghe.
thì quá trình phát triển chiều cao cũng sẽ khác nhau…
Lờng ghép giáo dục giới tính cho học sinh.
- Hs:
- Gv chốt lại: trong các cách tìm kiếm này, cách nào
+ Bước 1: MAX <= a1; i<=1;
cũng đúng và cuối cùng cũng đều đưa ra kết quả là bạn
cao nhất. Nhưng cách để có thể viết và đưa ra câu lệnh + Bước 2: Nếu ai >MAX, gán MAX
cho chương trình máy tính hoạt động nhanh nhất theo <=ai;
cơ là cách thứ 3. Đây cũng chính là cách tìm số lớn
nhất trong dãy số mà chúng ta đang nghiên cứu ví dụ.
Vậy dựa vào cách làm này các em hãy mơ tả thuật tốn
tìm số lớn nhất trong dãy số a1, a2, …, an.
- Gv nhận xét, yêu cầu học sinh dựa vào thuật tốn trên
tìm con thỏ nặng nhất trong số bốn con thỏ có trọng
lượng tương ứng 2, 1, 5, 3 kilogam;
+ Bước 3: i <=i+1;
+ Bước 4: Nếu i ≤ n, quay lại bước 2;
+ Thông báo giá trị MAX và kết thúc
thuật toán.
- Hs:
+ Bước 1: MAX<=2; i<=1;
+ Bước 2: so sánh MAX với con thỏ thứ
hai. Vì trọng lượng con thỏ thứ hai(bằng
1) nhỏ hơn trọng lượng của thỏ số 1, do
đó MAX vẫn bằng 2;


Người viết: Nguyễn Thị Thu Thủy

+ Bước 3: tiếp tục so sánh MAX với
trọng lượng thỏ thứ 3. Vì trọng lượng thỏ
thứ 3 lớn hơn MAX, do đó MAX=5;
Trang 10


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
+ Bước 4: So sánh MAX với con thỏ thứ
4, MAX lớn hơn trọng lượng của con thỏ
thứ 4, do đó MAX vẫn bằng 5. Kết quả,
thỏ nặng nhất có trọng lượng là 5.
- Hs quan sát giáo viên viết và chạy
chương trình.
- Gv viết chương trình cho học sinh quan sát:

- Gv chạy chương trình cho học sinh quan sát:

Đối với cách thực hiện như thế này sẽ phát huy được tối đa tình thần tự nghiên cứu và tự học
của học sinh. Với cách này giáo viên chỉ đóng vai trị dẫn dắt, đưa ra vấn đề cho học sinh giải
quyết. Từ đó khắc sâu được kiến thức cho học sinh. Ngồi ra giáo viên cịn lờng ghép đươc giáo
dục sức khỏe, tâm sinh lý lứa tuổi của học sinh.
2.2. Bài tốn 3: Viết chương trình nhập điểm của các bạn trong lớp. Sau đó in ra màn hình
số bạn đạt kết quả học tập loại giỏi, khá, trung bình vầ kém (theo tiêu chuẩn > 8.0 điểm: Giỏi, từ
6.5 điểm đến 7.9 điểm: Khá, từ 5 điểm đến 6.5 điểm: Trung bình và dưới 5 điểm: Kém). (SGK tin
học dành cho THCS quyển 3 trang 147)
Hoạt động giáo viên
- Gv: Hãy xác định bài toán đã cho


Hoạt động học sinh
- Hs:
+ Input: Điểm của các bạn trong lớp
+ Output: Xếp loại của các học sinh theo tiêu chí: Số các

Người viết: Nguyễn Thị Thu Thủy

Trang 11


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
bạn đạt kết quả học tập loại giỏi, khá, trung bình, yếu
(theo tiêu chuẩn từ 8.0 trở lên đạt loại Giỏi, từ 6.5 đến 7.9
đạt loại Khá, từ 5.0 đến 6.4 đạt trung bình và dưới 5.0
xếp loại kém)
- Gv: Dựa và xác định bài tốn, hãy mơ
tả thuật toán cho bài toán trên. (yêu cầu
các học sinh hoạt động theo cặp đôi,
hai học sinh cùng thảo luận và đưa ra
kết quả)

- Hs:
+ Bước 1: Nhập số bạn trong lớp N và dãy a1, a2, …, an.
+ Bước 2: G:=0; K:=0; Tb:=0; Ke:=0;
+ Bước 3: iNếu A[i]>=8.0 thì G:=G+1;
Nếu A[i]<8.0 và A[i]>=6.5 thì K:=K+1;
Nếu A[i]<6.5 và A[i]>=5.0 thì Tb:=Tb+1;
Nếu A[i]<5.0 thì Ke: Ke:=Ke+1;

+ Bước 4: i>n. In kết quả ra màn hình

- Gv: chia lớp thành 4 nhóm lớn và yêu - Các nhóm thực hiện theo yêu cầu của giáo viên
cầu các học sinh thực hiện những
nhiệm vụ sau:
+ Nhóm 1: Khai báo các biến sẽ sử
dụng trong chương trình
+ Nhóm 2: Viết đoạn chương trình
nhập số bạn và nhập điểm của các bạn
trong lớp
+ Nhóm 3: Viết đoạn chương trình
kiểm tra điều kiện để in ra kết quả học
tập của các học sinh theo yêu cầu:
Nếu A[i]>=8.0 thì G:=G+1;
Nếu A[i]<8.0 và A[i]>=6.5 thì
K:=K+1;
Nếu A[i]<6.5 và A[i]>=5.0 thì
Tb:=Tb+1;
Nếu A[i]<5.0 thì Ke: Ke:=Ke+1;
+ Nhóm 4: Viết câu lệnh in kết quả ra
màn hình.
- Gv: yêu cầu các nhóm báo cáo kết
quả hoạt động của nhóm mình.
- Hs nhóm 1:
program Phanloai;
- Gv: Bài này chúng ta sử dụng những
Người viết: Nguyễn Thị Thu Thủy

uses crt;
Trang 12



Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
biến nào?

Var i, n, G, K, Tb, Ke: integer;

- Gv: biến mảng A: array[1..100] of
A: array[1..100] of real;
real; được dùng để làm gì?
- Hs: trả lời theo khai báo, giải thích ý nghĩa của các biến.
- Gv: Có cần thiết phải khai báo số
phần tử của biến mảng là 100 không?
- Hs: để lưu số học sinh của một lớp
Vì sao?
- Hs: khơng, vì số học sinh của một lớp theo em biết
- Gv: Vậy số phần tử của mảng cần
khơng có lớp nào hơn 45 học sinh.
khai báo là bao nhiêu?
- Hs: 50
- Gv: Theo thông tư số 12/2011/TTBGDĐT quy định mỗi lớp ở các cấp
THCS và THPT có khơng q 45 học - Hs lắng nghe.
sinh.
- Gv yêu cầu Hs nhóm 2 báo cáo
- Hs nhóm 2:
Begin
write('Nhap so cac ban trong lop, n = ');
readln(n);
writeln('Nhap diem:');
For i:=1 to n do

Begin
write('hoc sinh [', i ,']=');
readln(a[i]);
- Gv yêu cầu học sinh giải thích các câu
lệnh
- Gv: đoạn lệnh này dùng để làm gì?

End;
- Hs giải thích các câu lệnh

For i:=1 to n do
Begin
write('hoc sinh [', i ,']=');

- Hs: dùng để nhập điểm của các bạn học sinh trong lớp.

readln(a[i]);
End;
- Gv yêu cầu Hs nhóm 3 báo cáo
- Hs nhóm 3:
Người viết: Nguyễn Thị Thu Thủy

Trang 13


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
G:=0; K:=0; Tb:=0; Ke:=0;
for i:=1 to n do
begin
if a[i]>=8.0 then G:=G+1;

if (a[i]<8.0) and (a[i]>=6.5) then K:=K+1;
if (a[i]>=5)and(a[i]<6.5)then Tb:=Tb+1;
if a[i]<5 then Ke:=Ke+1;
- Gv yêu cầu Hs giải thích các câu lệnh.

end;

- Gv: Viết câu lệnh in kết quả ra màn - Hs giải thích.
hình
- Hs nhóm 4:
writeln('Ket qua hoc tap:');
writeln(G,' ban hoc gioi');
writeln(K,' ban hoc kha');
writeln(Tb,' ban hoc trung binh');
writeln(Ke,' ban hoc yeu');
readln;
End.
- Gv yêu cầu hs giải thích các câu lệnh

- Hs giải thích.

- Gv: theo quy chế đánh giá xếp loại - Hs: trả lời theo hiểu biết
học sinh trung học cơ sở thì cách xếp
loại như trên đã đúng chưa?
- Gv: giải thích thêm điểm trung bình
các mơn học từ 8,0 trở lên, trong đó - Hs lắng nghe.
điểm trung bình của 1 trong 2 mơn
Tốn, Ngữ văn từ 8,0 trở lên; riêng đối
với học sinh lớp chuyên của trường
THPT chuyên phải thêm điều kiện

điểm trung bình mơn chun từ 8,0 trở
lên; Khơng có mơn học nào điểm trung
bình dưới 6,5; Các mơn học đánh giá
bằng nhận xét đạt loại Đ.
- Gv các loại khác chúng ta về nghiên
cứu thơng tư 58/2011/TT-BGDĐT. Vì
thế các em hãy tập trung học đều các
Người viết: Nguyễn Thị Thu Thủy

Trang 14


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
mơn học nếu các em muốn đạt kết quả - Hs lắng nghe.
cao ở cuối năm.
- Gv yêu cầu học sinh gõ chương trình
đã viết vào máy, dịch và chạy chương
- Hs làm theo yêu cầu của giáo viên
trình.
- Hs làm theo yêu cầu của giáo viên

- Hs dịch và chạy chương trình.

Ở nội dung này, giáo viên cũng sẽ là người dẫn dắt, điều hành các em thực hiện nhiệm vụ
của mình. Các em học sinh sẽ hoạt động theo nhóm, cặp đơi, thảo luận, phản biện để bảo vệ và đưa
ra kết luận cho cơng việc nhóm mình thực hiện. Các em học sinh sẽ chủ động trong việc hình thành
kiến thức, tự tin hơn khi tự phản biện bảo vệ ý kiến của nhóm mình nâng cao khả năng nói trước
đám đơng. Bên cạnh đó giáo viên cịn có thể lờng ghép hướng dẫn cho học sinh về ý thức học tập,
về quy trình đánh giá xếp loại học tập của học sinh để học sinh có thể hiểu và chủ động đưa ra định
hướng và cách học riêng cho bản thân mình để đạt kết quả tốt nhất trong học tập.


IV. Tính mới của giải pháp:

Người viết: Nguyễn Thị Thu Thủy

Trang 15


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
Vận dụng linh hoạt các phương pháp dạy học tích cực trong q trình dạy học: phương pháp
vấn đáp, phương pháp đặt và giải quyết vấn đề, phương pháp thảo luận nhóm.
Phát huy được tính tích cực, chủ động của học sinh trong q trình tiếp thu kiến thức.
Lờng ghép giáo dục ý thức học tập, kỹ năng sống cho học sinh.
Tạo khơng khí sơi nổi trong giờ học, kích thích hứng thú học tập của học sinh đã tạo cho các
em tính mạnh dạn, tự tin hơn khi trình bày và phát biểu ý kiến của mình.
Tơi sẽ tiếp tục phát triển các giải pháp nêu trên và ứng dụng các giải pháp đó vào giảng dạy
mơn Tin học ở các năm học tiếp theo.
V. HIỆU QUẢ SKKN:
Nâng cao chất lượng giảng dạy bộ môn Tin học.
Tỉ lệ học sinh ứng dụng kiến thức đã học vào thực hành giải quyết vấn đề tăng lên rõ rệt.
Nâng cao ý thức trách nhiệm của người học sinh trong học tập cũng như trong cuộc sống
hằng ngày.
Các em đã chủ động trong việc tự học, mạnh dạn, tự tin tìm hiểu, đề xuất những vấn đề có
trong thực tế để trao đổi với bạn bè, với thầy cô giáo để tìm kiến thức mới, tìm hướng giải quyết
cùng nhau chia sẻ những điều đã biết hoặc chưa biết, phát huy vai trò tự giác, ý thức cá nhân và
tinh thần tự học trong từng hoạt động học tập. Những kỹ năng giao tiếp cần thiết giúp học sinh từng
bước tự khẳng định mình.
Điều đó cho thấy, các biện pháp nêu trên đã có tính khả thi và mang lại hiệu quả tích cực.
Qua học kỳ II của năm học 2017 – 2018, các lớp thực nghiệm với giải pháp nêu trên đã đạt được
những kết quả rất khả quan về mặt học tập và năng lực xử lí.

Thực nghiệm sư phạm được tiến hành từ tháng 10/2017 đối với HS lớp 8 học Trường THCS
Buôn Trấp, Krông Ana, Đăk Lăk với các lớp thực nghiệm (TN), đối chứng (ĐC) sau khi phát phiếu
điều tra học sinh đã thu được kết quả như sau: - Tổng số lớp: 02 lớp
Lớp TN: 8A1, lớp ĐC: 8A2.
Tổng số học sinh: 82
Nhóm
Tổng
Số HS
Lớp

Mức độ hoàn thành bài tập được giáo viên đưa ra
Hoàn

Hoàn

Chưa

HS Tự đề xuất

thành

thành

hồn

vấn đề tìm

chương

chương


thành

hướng giải

Người viết: Nguyễn Thị Thu Thủy

Trang 16


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải tốn”
trình
khơng có
lỗi
Thực nghiệm

8a1

Đối chứng

8a2

trình vẫn

chương

quyết ở trên

gặp lỗi


trình

lớp

42

TS
30

%
71.4

TS
12

%
28.6

TS
0

%
0

TS
28

%
66.7


40

5

12.5

12

30.0

23

57.5

10

25.0

* Về kết quả học tập

Nhóm

Thực nghiệm

Đối chứng

Kết quả bài kiểm tra thường xuyên

Tổng
Số HS

Lớp
8a1
8a2

42
40

Điểm 8-10
TS
%
7
5

16.7
12.5

Điểm 6.5-8 Điểm 5-6.5
TS
%
TS
%
20
22

47.6
55.0

15
13


35.7
32.5

Điểm 3.5- 5
TS
%
0
0

0
0

Qua việc trực tiếp tiến hành dạy học, tôi thấy ở lớp TN, HS hứng thú tham gia vào quá trình
học tập dưới sự hướng dẫn của GV, tư duy của HS cũng có những thay đổi tích cực.
Mức độ hứng thú và phát triển của HS ngày càng tăng từ tiết học trước đến tiết học sau, đặc
biệt thể hiện ở sự phản ứng của HS trước những câu hỏi của GV, trong tiết đầu tiên, vì chưa quen
với cách tổ chức và hướng dẫn học, phản ứng của các em cịn chậm, chưa chủ động phát biểu ý
kiến của mình. Ở tiết thứ hai, do đã qua một giờ luyện tập và được sự định hướng của GV để tiến
hành tìm hiểu kiến thức mới, có sử dụng các giải pháp trên nên phản ứng của HS đã nhanh nhẹn
hơn, q trình học tập diễn ra sơi nổi, tích cực hơn, HS tỏ ra ngạc nhiên, thích thú trước những tình
huống mới xuất hiện trong bài học, háo hức đưa ra câu trả lời và cịn đưa ra thêm tình huống để cơ
và trị cùng giải quyết. Ở tiết học thứ 3, HS đã hồn tồn chủ động, tích cực đưa ra các ý kiến, biết
suy luận, đặt vấn đề, biết định hướng giải quyết vấn đề.

PHẦN THỨ BA: KẾT LUẬN, KIẾN NGHỊ:
Người viết: Nguyễn Thị Thu Thủy

Trang 17



Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
I. KẾT LUẬN:
- Nhằm nâng cao hiệu quả và chất lượng bộ môn tin học, giáo viên phải thực hiện chiến
lược lâu dài, phải tìm kiếm được đối tượng học sinh có năng khiếu đặc biệt đối với bộ mơn thơng
qua bài giảng với những câu hỏi và tình huống nhanh để phát hiện đối tượng có năng khiếu đặc biệt
đó.
- Người giáo viên phải linh hoạt đổi mới phương pháp giảng dạy sao cho lôi cuốn học sinh
và tạo được sự đam mê để chính các em yêu thích và khám phá mơn học do các em lựa chọn.
- Qua nhiều năm áp dụng nội dung nghiên cứu này, chúng tôi nhận thấy số lượng học sinh
tham gia trong các kỳ thi học sinh giỏi bộ môn tin học ngày càng nhiều, chất lượng của các em học
sinh cũng được nâng lên rõ rệt.

II. Ý KIẾN ĐỀ XUẤT:
1. Đối với Phòng Giáo dục và Đào tạo:
- Lãnh đạo phịng, lãnh đạo các trường nên tiếp tục duy trì khuyến khích học sinh lớp 8 tham
gia thi học sinh giỏi môn tin học, để học sinh xác định được hướng lựa chọn cho bản thân cũng như
khuyến khích tinh thần tự học, tự nghiên cứu của học sinh ngay từ khi mới làm quen với ngơn ngữ
lập trình và bài tốn.
- Các giáo viên giảng dạy mơn tốn học nên ra một số đề toán cơ bản và yêu cầu học sinh có
thể chuyển đổi sang ngơn ngữ lập trình.

2. Đối với các trường:
- Nên tổ chức chuyên đề đổi mới phương pháp dạy học môn Tin học ở các cụm trường với
nhau, để trao đổi, học hỏi kinh nghiệm lẫn nhau.
- Cần chú trọng hơn nữa công tác bời dưỡng học sinh giỏi nói chung mơn Tin học nói riêng.
Bn Trấp, Ngày 26 tháng 4 năm 2019
Người viết

Nguyễn Thị Thu Thủy


TÀI LIỆU THAM KHẢO
Người viết: Nguyễn Thị Thu Thủy

Trang 18


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
+ SGK tin học quyển 3
+ Sách giáo viên tin học quyển 3
+ Hoạt động dạy học ở trường THCS (Nguyễn Bảo Ngọc – Hà Thị Đức)

Nhận xét của Hội đồng chấm sáng kiến kinh nghiệm cấp trường
.............................................................................................................................................................................

Người viết: Nguyễn Thị Thu Thủy

Trang 19


Kinh nghiệm “Sử dụng ngơn ngữ lập trình Pascal để giải toán”
.............................................................................................................................................................................
.............................................................................................................................................................................
.............................................................................................................................................................................
.............................................................................................................................................................................

CHỦ TỊCH HỘI ĐỒNG CHẤM SKKN CẤP TRƯỜNG

Nhận xét của Hội đồng chấm sáng kiến kinh nghiệm cấp Huyện
.............................................................................................................................................................................
.............................................................................................................................................................................

.............................................................................................................................................................................
.............................................................................................................................................................................
.............................................................................................................................................................................

CHỦ TỊCH HỘI ĐỒNG CHẤM SKKN CẤP HUYỆN

Người viết: Nguyễn Thị Thu Thủy

Trang 20



×