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

Một số biện pháp rèn kỹ năng thực hành lập trình PASCAL bộ môn TIN học lớp 8

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 (205.73 KB, 23 trang )

UBND HUYỆN YÊN PHONG
TRƯỜNG THCS YÊN PHU

SÁNG KIẾN ĐỀ NGHỊ THẨM ĐỊNH, ĐÁNH GIÁ Ở CẤP: Ngành
TÊN SÁNG KIẾN:

MỘT SỐ BIỆN PHÁP
RÈN LUYỆN KỸ NĂNG THỰC HÀNH
TRONG LẬP TRÌNH PASCAL
BỘ MÔN TIN HỌC LỚP 8
Tác giả Sáng kiến: Lưu Tuấn Anh
Chức vụ: Giáo viên.
Đơn vị công tác: Trường THCS Yên Phụ.
Bộ môn (chuyên ngành): Tin học

Yên Phụ, tháng 10 năm 2018


Giáo Viên: Lưu Tuấn Anh
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập - Tự do - Hạnh phúc
ĐƠN YÊU CẦU CÔNG NHẬN SÁNG KIẾN
Cấp cơ sở đơn vị………..
Kính gửi: Hội đồng sáng kiến cấp …. (theo cấp tác giả yêu cầu thẩm định, công
nhận sáng kiến: Cấp ngành hoặc cấp tỉnh)
1. Tên sáng kiến:……………………………………………………………
………………………………………………………………………………
2. Lĩnh vực áp dụng sáng kiến:…………………………………………….
3. Tác giả sáng kiến:
- Họ tên:...............................................................


- Cơ quan, đơn vị:………………………………
- Địa chỉ:..............................................................
- Điện thoại:.........................................................
- Fax:..................................................Email:...................................................
4. Đồng tác giả sáng kiến (nếu có):
- Họ tên:...............................................................
- Cơ quan, đơn vị:………………………………
- Địa chỉ:..............................................................
5. Chủ đầu tư tạo ra sáng kiến (Trường hợp tác giả không đồng thời là chủ
đầu tư tạo ra sáng kiến):
- Tên chủ đầu tư:..................................................
- Cơ quan, đơn vị:………………………………
- Địa chỉ:..............................................................
6. Các tài liệu kèm theo:
6.1. Thuyết minh mô tả giải pháp và kết quả thực hiện sáng kiến (đóng
trong cuốn đề tài, sau đơn yêu cầu công nhận SK): Mẫu 02/SK
6.2. Số lượng cuốn đề tài có đóng kèm các tài liệu trên nộp về Phòng
GD&ĐT: 03 cuốn.
Yên Phụ, ngày 10 tháng 10 năm 2018
TÁC GIẢ SÁNG KIẾN
(Chữ ký và họ tên)

MỘT SỐ BIỆN PHÁP RÈN KỸ NĂNG THỰC HÀNH
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

TRONG LẬP TRÌNH PASCAL BỘ MÔN TIN HỌC LỚP 8

PHẦN A. ĐẶT VẤN ĐỀ
I.

LÝ DO CHỌN ĐỀ TÀI.

Mục tiêu cơ bản của ngành giáo dục và đào tạo Việt Nam hiện nay là
không ngừng đổi mới phương pháp giảng dạy và nâng cao chất lượng giáo
dục ở tất cả các cấp học mà trong đó cấp Trung học cơ sở là không thể thiếu.
Để làm được điều này đòi hỏi đội ngũ giáo viên nhà trường ở tất cả các bộ
môn cần thể hiện tinh thần trách nhiệm, tích cực trong mọi lĩnh vực để hoàn
thành tốt sứ mệnh của ngành đã đề ra.
Trong các môn học, Tin học là môn học không thể thiếu trong nhà
trường phổ thông. Chính vì vậy, đổi mới phương pháp giảng dạy bộ môn Tin
học trong nhà trường đặt lên vai đội ngũ thầy cô giáo giảng dạy Tin học là
nghĩa vụ cao cả để hoàn thành các chỉ tiêu và hiệu quả đào tạo của nhà trường
đặc biệt là bậc học Trung học cơ sở;
Việc giảng dạy Tin học trong nhà trường phổ thông ở Việt Nam nhiều
năm nay đã xem môn Tin học là môn học không thể thiếu, bậc học Trung học
cơ sở lại rất cần thiết đối với lứa tuổi phát triển về tư duy, về tâm sinh lý.
Trong đó, môn Tin học được triển khai thực hiện ở tất cả các khối 6, 7, 8, 9;
Học sinh được tiếp cận nhiều trên các phương tiện hiện đại, hệ thống
phòng máy với các thiết bị máy tính có cấu hình tương đối cao, hệ thống
mạng cáp quang tương đối mạnh để đảm bảo phục vụ tốt nhu cầu học tập và
tra cứu bộ môn Tin học của học sinh trong nhà trường;
Trong các khối lớp học thì Tin học lớp 8 là môn học tương đối khá
trừu tượng, khó hiểu, nếu không nói là khô khan khó nuốt đối với các em.
Việc học tốt môn Tin học lại càng khó khăn hơn đối với các em vì hầu hết
kiến thức chủ yếu và trọng tâm của chương trình là lập trình trên môi trường
ngôn ngữ Pascal, đòi hỏi học sinh phải chú ý tìm hiểu kỹ vấn đề, hiểu được
cách giải bài toán, hiểu cách mô tả thuật giải bài toán, cách viết chương trình,

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

kiểm lỗi, sửa lỗi chương trình và chạy thử;
Trong quá trình giảng dạy bản thân tôi nhận thấy học sinh khối 8 là
khối học rất sợ môn Tin học vì kiến thức lập trình khá mới mẻ và khó hiểu.
Các em phải tập trung cao độ, tìm hiểu chặt chẽ vấn đề của từng bài toán trên
cơ sở hướng dẫn của giáo viên thì mong mới hiểu được cách viết lập trình cho
một bài toán;
Chính vì vậy, để giúp các em hiểu được vấn đề của ngôn ngữ lập trình
Pascal và hiểu được cách mô tả bài toán, lập trình viết bài toán nên tôi mạnh
dạn chọn giải pháp “Một số biện pháp rèn kỹ năng thực hành trong lập
trình Pascal
bộ môn Tin học lớp 8” để giúp học sinh tiến bộ hơn trong học tập đặc biệt là
các giờ thực hành ở bộ môn Tin học khối 8 bậc Trung học cơ sở.
II.

Ý NGHĨA VÀ TÁC DUNG CỦA ĐỀ TÀI.
Áp dụng vào một số bài toán thực tế trong chương trình Tin học lớp 8

và một số bài toán nâng cao áp dụng cho đối tượng học sinh giỏi bộ môn;
Nâng cao tính ứng dụng, phát huy khả năng tư duy, nhận xét các bài
toán, rèn luyện kỹ năng lập trình từ đó nâng cao hiệu quả học tập bộ môn giúp
học sinh hiểu rõ cách mô tả và giải quyết từng bài toán;
Học sinh thích tìm hiểu, nghiên cứu khoa học đặc biệt là lĩnh vực lập
trình, học sinh tự tin hơn trong học tập bộ môn và từ đó say mê và ham thích
học tập bộ môn nhiều hơn để đạt kết quả cao.

III.

MUC ĐÍCH NGHIÊN CỨU ĐỀ TÀI.
Sử dụng đề tài này để hướng dẫn các em học sinh lớp 8 một số kỹ

năng rèn luyện thực hành lập trình cơ bản và nâng cao đối với bộ môn Tin
học, giúp học
sinh hiểu được những bước cơ bản và hoàn thiện các bài tập thực hành giáo
viên yêu cầu;
Học sinh tiến hành vận dụng kỹ năng để viết các bài tập trong chương
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

trình, các bài tập áp dụng cho học sinh giỏi, vận dụng các kỹ năng lập trình để
giải quyết một số bài toán từ đơn giản đến nâng cao.
IV.

PHẠM VI VÀ ĐỐI TƯỢNG NGHIÊN CỨU.
Phạm vi nghiên cứu: Rèn luyện kỹ năng thực hành lập trình Pascal

trong quá trình giảng dạy bộ môn Tin học lớp 8 (quyển 3), năm học 2015 –
2016;
Đối tượng nghiên cứu: Học sinh các lớp 8A, 8B, 8C, 8D, 8E của
trường THCS Yên Phụ
V.

ĐIỂM MỚI TRONG KẾT QUẢ NGHIÊN CỨU.

Thực hiện việc đổi mới phương pháp giảng dạy và nâng cao chất

lượng giáo dục đào tạo, đổi mới kiểm tra đánh giá thì việc hình thành trang bị
cho học sinh những kỹ năng cơ bản và kỹ năng nâng cao khả năng lập trình là
một trong những yếu tố quan trọng và chủ yếu để các em học sinh tự tin trong
học tập bộ môn Tin học đặc biệt là học sinh khối 8;
Ngôn ngữ lập trình Pascal và rèn luyện kỹ năng cơ bản cho học sinh
khối 8 là nền tảng phát triển khả năng tư duy kiến thức một cách hiệu quả.
Hình thành cho học sinh các kỹ năng như: kỹ năng giải quyết vấn đề, kỹ năng
tự học, kỹ năng đặt tên, kỹ năng hợp tác với mọi người,...
Nếu học sinh có thể giải quyết vấn đề, học mọi thứ nhanh chóng, đặt
tên mọi thứ hợp lý, và hợp tác hiệu quả với mọi người, thì các em sẽ có được
kết quả học tập cao hơn nhiều so với trước khi các em chưa được trang bị và
sẽ thành chuyên gia trong bất kỳ lĩnh vực công nghệ nào trong tương lai.

PHẦN B. NỘI DUNG CỦA ĐỀ TÀI
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

I.

CƠ SỞ LÝ LUẬN VÀ THỰC TRẠNG CỦA ĐỀ TÀI.
1. Cơ sở lý luận:
Công nghệ thông tin càng ngày càng phát triển, có nhiều đổi mới và sự
thay

đổi rất bất chợt đến nỗi ngày nay tất cả các lập trình viên hầu như không thể

nắm rõ hiện tại là có những gì đang xảy ra. Sự phát triển nhanh vọt kéo theo
những yêu cầu mới về kỹ năng, và trình độ hiểu biết của một lập trình viên;
Trong lĩnh vực công nghệ thông tin đang trên đà phát triển hiện nay,
đã và đang nảy sinh khá nhiều lĩnh vực và tạo nên các nhóm ngành mới, tạo
điều kiện cho các lập trình viên mới có thể tiếp cận và chọn lựa ngành phù
hợp với khả năng của mình;
Chính vì vậy việc trang bị và rèn luyện kỹ năng lập trình bằng việc
tăng cường các tiết thực hành ở nhà trường cho các em học sinh là một cách
vô cùng hiệu quả. Việc học lập trình cũng giống như giải một bài toán, có rất
nhiều cách khác nhau để đi đến đáp số của một bài toán. Các em cũng sẽ có
nhiều cách khác nhau để viết nên một chương trình. Việc tìm hiểu nhiều
nguồn tài liệu từ các kênh khác nhau sẽ giúp các em biết được cách làm nào
tốt, cách làm nào chưa tốt, và rút ra cách làm tối ưu nhất cho mình trong tất cả
các trường hợp ở các dạng bài tập.
2. Thực trạng học tập bộ môn tại nhà trường:
Theo thói quen của nhiều em học sinh, học môn Tin là học những thao
tác sử dụng như cách sử dụng internet, sử dụng hệ điều hành window, chương
trình soạn thảo văn bản MS Word, chương trình soạn thảo trình diễn MS
PowerPoint … Đây là những phần học không cần đòi hỏi tư duy, mà chỉ cần
học kĩ và nhớ thao tác, thực hành nhiều lần thì sẽ thành thạo;
Pascal là một ngôn ngữ lập trình cho máy tính thuộc dạng mệnh lệnh,
được Niklaus Wirth phát triển vào năm 1970 là ngôn ngữ đặc biệt thích hợp
cho kiểu lập trình có cấu trúc. Pascal dựa trên ngôn ngữ lập trình ALGOL và
được đặt tên theo
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh


nhà toán học và triết học Blaise Pascal. Wirth đồng thời cũng xây dựng
Modula-2 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ôn ngữ lập trình Pascal là một loại ngôn ngữ lập trình bậc cao, các
câu lệnh và từ khóa rất gần gũi với ngôn ngữ của con người. Là một môn lập
trình nên đòi hỏi người lập trình phải có tính tư duy, có khả năng phân tích,
tổng hợp;
Nhưng khi học bộ môn lập trình Passal chương trình lớp 8 ở Trung
học cơ sở thì hầu như các em bị “choáng” vì bộ môn rất “mới”, và cách học
cũng “mới”. Học những thao tác và thực hành nhiều không còn tác dụng, học
thuộc bài cũng không còn ổn nữa. Lúc này các em cần phải học cách tư duy
logic, tìm thuật toán, và viết những dòng lệnh máy tính chính xác đến từng
đấu chấm, dấu phẩy;
Với tâm lí thông thường các em học sinh coi Tin học là môn phụ
không quan trọng nên nhiều em chủ quan không dành đủ thời gian để học nên
không hiểu bài và dần bị mất căn bản. Đây cũng là lí do mà nhiều em bị điểm
kém, thậm chí là thi lại, học lại bộ môn tin học mặc dù có thể các em học rất
giỏi các môn học khác;
Chính vì những điều đó nên Pascal cũng là một môn học gây khó khăn
cho không ít học sinh, nhất là học sinh lớp 8. Ở lứa tuổi này, các em đang phát
triển không đồng đều về tâm sinh lý nên rất ngán ngại khi học bởi vậy gặp
không ít khó khăn cho các em khi phải sử dụng Pascal để lập trình.
Đặc biệt, đối với những học sinh yếu, kém thì lại càng khó hơn. Mặt
khác, nhiệm vụ chính trị quan trọng của năm học là không ngừng nâng cao
chất lượng giảng dạy của giáo viên và việc học tập của học sinh, đổi mới cách
nhìn và tư duy học tập bộ môn Tin học khối 8;
Trong quá trình giảng dạy thực tế tại trường THCS Yên Phụ, trong các
tiết thực hành bản tôi nhận thấy kỹ năng đọc hiểu bài toán, mô tả bài toán và
kỹ năng viết lập trình đối với các em học sinh khối lớp 8 là rất yếu, chưa đáp
ứng được yêu cầu khi tiếp xúc với các bài tập lập trình Pascal;

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Theo khảo sát kiểm tra đầu năm học với học sinh các lớp 8 tại nhà
trường thì trong đó khoảng gần 60% các em chưa hiểu ngôn ngữ lập trình
Pascal là gì?. Việc tiếp cận kiến thức lập trình để áp dụng giải bài toán cụ thể
còn nhiều vấn đề gây khó khăn cho việc viết chương trình, trong đó phải kể
đến là các bước thực hiện lập trình, mô tả thuật toán và việc khai báo thư
viện cũng như cú pháp các câu lệnh trong Pascal, kiểm lỗi, sửa lỗi chương
trình và chạy thử;
Thực tế cho thấy tỷ lệ học sinh đạt điểm trung bình trở lên khi làm
những bài tập đơn giản đầu tiên khá thấp, các em chưa hiểu rõ vấn đề, chưa
thực sự ham thích, chưa thuộc các cú pháp câu lệnh và sai cấu trúc khá nhiều
dẫn đến kết quả không như mong đợi.
Điểm số

Số lượng

Tỷ lệ

1

27/199

13,56%

2


29/199

14,57%

3

32/199

16,08%

4

30/199

15,07%

5

22/199

11,05%

6

29/199

14,57%

7


13/199

6,53%

8

10/199

5,02%

9

05/199

2,51%

10

02/199

1,00%

3. Các biện pháp tiến hành để giải quyết vấn đề.
Nghiên cứu tài liệu các kỹ năng lập trình trong việc nghiên cứu
chuyên môn, tiến hành tham gia dự giờ các đồng nghiệp và trao đổi kinh
nghiệm giảng dạy với các đồng nghiệp trong nhà trường hay các đơn vị bạn,
đồng thời rút kinh nghiệm bản thân qua các tiết dạy lý thuyết và thực hành
trên phòng máy tính;
Tham khảo các giáo trình, sách báo và tìm hiểu ngôn ngữ lập trình

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Pascal qua mạng internet, các tài liệu và tích lũy kinh nghiệm giảng dạy. Giới
thiệu tạo những hứng thú cho học sinh bằng việc đưa nhiều hình ảnh có liên
quan bài học, bài tập để khi tiến hành làm thực hành các em học sinh dễ dàng
khắc sâu các kiến thức bài học đồng thời áp dụng cho những bài tập có liên
quan đến những bài học sau, bài học mới.
II.

MUC TIÊU CƠ BẢN CỦA ĐỀ TÀI:
Rèn luyện cho học sinh những kỹ năng đọc hiểu được bài toán, các

bước giải quyết vấn đề, các bước mô tả thuật toán và giải quyết các bài toán trên
máy tính một cách lôgic và khoa học;
Rèn luyện kỹ năng lập trình cho học sinh đồng thời phát huy tính tích
cực, sáng tạo, khả năng tư duy của học sinh trong giờ học lập trình đặc biệt là
trong giờ học thực hành để đề xuất những giải pháp nâng cao chất lượng học tập
bộ môn của học sinh.
III. MỘT SỐ BIỆN PHÁP THỰC HIỆN HƯỚNG DẪN HỌC SINH THỰC
HÀNH LẬP TRÌNH PASCAL TRÊN MÁY:
Pascal là một ngôn ngữ lập trình cấp cao sớm xuất hiện và phần nào thể
hiện được ưu điểm của nó trong việc ứng dụng để giải quyết các bài toán trên
máy tính. Ở trường phổ thông chúng ta không chú trọng học chuyên sâu về
ngôn ngữ lập trình để tạo ra các phần mềm máy tính mà tập trung rèn luyện kĩ
năng tư duy logic, tư duy hệ thống và sáng tạo không chỉ để giải quyết những
vấn đề trong tin học mà đây còn là những kĩ năng vô cùng quan trọng để giải

quyết nhiều vấn đề trong cuộc sống;
Việc giải quyết các bài toán trên máy tính thật sự không đơn giản đối
với các em học sinh. Trước tiên các em phải nắm vững lý thuyết, cú pháp câu
lệnh, tính nguyên tắc và logic của bài lập trình. Các em phải hiểu được quy tắc
đặt tên chương trình, tên biến cho phù hợp với bài toán và đảm bảo tính
nguyên tắc, ví dụ như tên chương trình nếu quá 8 kí tự ta cần dùng dấu gạch
nối xen giữa, bài lập trình nào thì ta cần dùng câu lệnh gán phối hợp với công
thức toán học mà các em đã học ở bộ môn Toán để tính, bài nào thì dùng câu
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

lệnh If…then, For…do, While…do, khi nào dùng kiểu dữ liệu Integer,
Real,

String

hay

Longint;

Bên cạnh đó để học sinh hiểu được, giáo viên cần chú ý cần quan tâm
khía cạnh sự thông hiểu của học sinh, nên cho các em tập làm quen với các
bài tập đơn giản nhất, dần dần tăng mức độ khó lên từ từ, không nên quá vội
vàng để học sinh tiếp xúc với những bài quá khó. Nếu các em chưa thông
hiểu, chưa giải quyết được vấn đề của bài tập đó, bản thân giáo viên nên giải
thích hướng dẫn các em mô tả, phân tích cụ thể để từ đó hiểu rõ hơn bài tập
mình đang làm;

Để thực hiện tốt kỹ năng lập trình các em cần nắm vững các công thức
toán học của bài toán để có thể chuyển đổi công thức ấy sang biểu thức
Pascal. Cho học
sinh ghi nhớ lại các công thức toán học mà các em chưa biết, chưa hiểu vào
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

vở bài tập. Ví dụ một số công thức cơ bản như sau:
+ Tính diện tích hình chữ nhật: SCN = chiều dài × chiều rộng. Khi đó
ta chuyển sang biểu thức Pascal sẽ là: S:=a*b; nên lưu ý học sinh khi viết
xong cuối dòng công thức phải có dấu chấm phẩy;
+ Tính diện tích hình vuông: SHV = cạnh × cạnh. Khi đó ta chuyển
sang biểu thức Pascal sẽ là: Dientich:=a*a; nên lưu ý học sinh khi viết xong
cuối dòng công thức phải có dấu chấm phẩy;
+ Tính chu vi hình tam giác: SABC = cạnh a + cạnh b + cạnh c. Khi đó
ta chuyển sang biểu thức Pascal sẽ là: CV:=a+b+c; nên lưu ý học sinh khi viết
xong cuối dòng công thức phải có dấu chấm phẩy;
Ngoài ra, trong tiết học thực hành để khích lệ động viên tinh thần các
em giáo viên nên biểu dương những học sinh có thành tích tốt bằng nhiều biện
pháp, có thể cho điểm khuyến khích, động viên, khen thưởng trước lớp và
điều quan trọng hơn nữa là những học sinh có tư duy tốt cùng với thầy hướng
dẫn lại các bạn trong quá trình thực hành;
1. Cấu trúc cơ bản nhất của một bài lập trình Pascal:
Về mặt lý thuyết giáo viên nên cung cấp chắc chắn cho học sinh cấu
trúc chung của một bài lập trình theo cú pháp như sau:
PROGRAM <Tên chương trình>;
[<Phần khai báo>];

BEGIN
<Phần thân chương trình>;
READLN;
END.
Bên cạnh đó, cũng cần lưu ý học sinh cách đặt tên chương trình đúng
quy tắc, đảm bảo không sai cú pháp khi đặt tên chương trình, tên chương trình

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

không được trùng với các từ khóa: PROGRAM, BEGIN, USES, VAR,
END,..., dung dấu gạch nối xen giữa nếu tên dài quá 8 ký tự và phải đảm bảo
tên không dài quá 127 ký tự, tên chương trình phải được đặt bằng tiếng việt
không dấu, không sử dụng dấu cách;
Các biến ở phần khai báo phải đảm bảo phù hợp với bài toán và phù
hợp với kiểu dữ liệu cần nhập.
+ Cú pháp khai báo tên thư viện: <Từ khóa> <Tên các thư viện>; Ví
dụ khai báo thư viện Crt, Graph... là: USES CRT,GRAPH;
+ Cú pháp khai báo tên hằng: <Từ khóa> <Tên hằng=Giá trị>; Ví dụ
khai báo tên biến Pi khi tính diện tích hình tròn là: Const Pi=3.14;
+ Cú pháp khai báo biến: <Từ khóa> <Tên các biến:Kiểu dữ liệu>;
Ví dụ khai báo các biến a, b khi thực hiện bài toán tính tổng hai số tự nhiên a
và b biết rằng a, b là 2 ký tự được nhập vào từ bàn phím là các số nguyên:
Var a,b:Integer;
+ Câu lệnh nhập dữ liệu vào từ bàn phím: Read(vào>); hoặc Readln(<Danh sách biến vào>); Ví dụ: Readln(CD,CR);
+ Câu lệnh cho phép xuất dữ liệu hoặc kết quả ra màn hình, câu lệnh

này thường sử dụng khá nhiều trong thực tế: Write(ra>); hoặc
Writeln(<Danh sách kết quả ra>); Ví dụ xuất ra màn hình kết quả dòng chữ
WELCOME TO NGUYEN VAN XO SECONDARY SCHOOL ta có thể
viết như sau: Writeln(‘Welcome to Nguyen Van Xo Secondary School’);
+ Câu lệnh gán được dùng để tính toán giá trị của biểu thức bên phải
được kết quả cuối cùng thì gán cho tên biến phía bên trái là: biến>:=<Biểu thức>;
Ví dụ: S:=a+b; hoặc CV:=(a+b)*2; ,…
Các phép toán số học, các hàm tính toán cơ bản trong Pascal: Phép cộng
(+), phép trừ (-), phép nhân (*), phép chia (/), chia lấy phần nguyên (DIV),
chia lấy phần dư (MOD), hàm tính giá trị tuyệt đối cho số thực hoặc số
nguyên ABS(x), hàm tính bình phương cho số thực hoặc số nguyên SQR(x),
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

hàm tính căn bậc hai cho số thực hoặc số nguyên SQRT(x), hàm tính lôgarít
tự nhiên của x với x là số thực LN(x), EXP(x), SIN(x), COS(x).
2. Cấu trúc câu lệnh điều kiện IF...THEN:
Trong Pascal để mô tả cấu trúc rẻ nhánh ta thường dùng câu lệnh
IF...THEN với hai trường hợp thiếu và đủ:
+ Trường hợp 1 câu lệnh cấu trúc rẻ nhánh dạng thiếu có cú pháp đầy đủ
như sau: IF <Điều kiện> THEN <Câu lệnh>; Nếu điều kiện có giá trị đúng
thì câu lệnh sau từ khóa then được thực hiện, nếu điều kiện có giá trị sai thì
câu lệnh sau từ khóa then sẽ không được thực hiện và bị bỏ qua. Ví dụ: IF
A=10 THEN
WRITELN(‘BAI LAM CUA BAN RAT XUAT SAC’);

+ Trường hợp 2 câu lệnh cấu trúc rẻ nhánh dạng đầy đủ có cú pháp như
sau:
IF <Điều kiện> THEN lệnh 1> ELSE <Câu lệnh 2>;
Nếu điều kiện cho giá trị đúng câu lệnh 1 sau từ khóa then được
thực hiện và bỏ qua câu lệnh 2, nếu điều kiện cho giá trị sai thì câu lệnh 2 sau
từ khóa Else được thực hiện và bỏ qua câu lệnh 1;
Ví dụ:
IF 9<3 THEN WRITELN(‘BAN NEN HOC BOI DUONG
TOAN’) ELSE WRITELN(‘BAN NEN HOC BOI DUONG
TIN HOC’);
Giáo viên trong quá trình cho học sinh thực hành nên hết sức lưu ý học
sinh các quy tắc khi sử dụng các câu lệnh cấu trúc rẻ nhánh như dấu chấm
phẩy được đặt sau dòng lệnh của từ khóa Else, hoặc trong quá trình sử dụng
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

lệnh rẻ nhánh cũng cần lưu ý có thể sử dụng câu lệnh ghép sau từ khóa Else
thì phải đặt giữa hai từ khóa BEGIN và END;
3. Cấu trúc câu lệnh lặp với số lần biết trước FOR...DO:
Cũng cần lưu ý học sinh khi giảng dạy lý thuyết lẫn thực hành, câu lệnh
lặp với số lần biết trước lúc nào cũng có hai dạng là lệnh lặp dạng tiến và lệnh
lặp dạng lùi mà sách giáo khoa chưa đề cập đến;
Lặp dạng tiến:
FOR <Biến đếm>:=<Giá trị đầu> TO <Giá trị cuối> DO lệnh>;
Ví dụ 1: Sắp xếp các lệnh sau đây thành một bài lập trình hoàn chỉnh

trong Pascal để thực hiện hiển thị các số từ 1 2 3 4 5 mỗi số cách nhau 3
khoảng trắng?
PROGRAM SAP_XEP;
USES CRT;
VAR i:INTEGER;
BEGIN
CLRSCR;
FOR i:=1 TO 5 DO WRITE(i:4);
READLN;
END.
Lặp dạng lùi (Dạng này dùng cho học sinh khá giỏi giới hạn SGK chưa
đề cập đến):
FOR <Biến đếm>:=<Giá trị cuối> DOWNTO <Giá trị đầu> DO lệnh>;
Đối với lệnh lặp dạng lùi áp dụng cho bài tập trên cần thực hiện cú pháp
các câu lệnh tương tự nhưng chỉ khác ở chỗ câu lệnh lùi có dạng cú pháp như
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

sau:
FOR i:=5 DOWNTO 1 DO WRITE(i:4);

4. Cấu trúc câu lệnh lặp với số lần chưa biết trước:
Để thực hành tốt các dạng bài tập câu lệnh lặp với số lần chưa biết
trước học
sinh cần thiết nắm vững kiến thức lý thuyết thông qua cú pháp:
While <Điều kiện> do <Câu lệnh>;

Với cú pháp này câu lệnh có ý nghĩa nếu câu lệnh kiểm tra điều kiện
đúng thì sẽ thực hiện câu lệnh. Sau một vòng lặp chúng ta có thể thao tác tăng
hoặc giảm biến để cho điều kiện sẽ bị sai sau một số vòng lặp;
Ví dụ: Hãy lập vào chương trình nhập hai số nguyên dương n và x.
Tính lũy thừa Nx.
Program Luy_thua;
Var x,n,Tich,Luythua:Integer;
Begin
Writeln(‘Nhap vao so nguyen duong N va X: ’); Readln(n,x);
Tich:=1;
Luythua:=1;
While Luythua<=n do
Begin
Tich:=Tich*x;
Luythua:=Luythua+1;
End;
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Writeln(‘Ta co N luy thua x la: ’,Tich);
Readln;
End.
5. Cấu trúc dữ liệu kiểu mảng:
Đối với nội dung này, giáo viên cần cho học sinh hiểu rõ khái niệm kiểu
mảng, hiểu được cách khai báo các phần tử và cách truy cập đến các phần tử
của mảng, học sinh cần hiểu được cách cài đặt thuật toán một số bài đơn giản
với dữ liệu kiểu mảng, thực hiện việc khai báo mảng, truy cập, tính toán các

phần tử của mảng, học sinh cần hiểu rõ các thành phần khai báo dữ liệu kiểu
mảng;
Để học sinh nắm được nội dung này tương đối khó khăn đối với trình
độ học sinh lớp 8, chính vì vậy ta vừa dạy cho học sinh loại mảng một chiều,
vừa nâng cao cho học sinh loại mảng hai chiều:
+ Khai báo mảng một chiều theo hai cách khác nhau, cách thứ nhất là ta
khai báo trực tiếp theo cú pháp sau:
Var <Tên biến mảng>: Array[m1..m2] of <Tên kiểu dữ liệu>;
Trong đó: m1, m2 có cùng kiểu dữ liệu xác định phạm vi của chỉ số
m1<=m2;
Ví dụ:

VAR M:ARRAY[1..5] OF INTEGER;

+ Đối với cách thứ hai ta thực hiện khai báo gián tiếp theo hai bước với
cú pháp như sau:
Bước 1: Type <Tên kiểu mảng>=Array[m1..m2] of liệu>;
Bước 2: Var <Tên biến mảng>:<Tên kiểu mảng>;

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Ví dụ: Type M=Array[1..5] of Integer;
Var a:M;
Tùy theo yêu cầu từng bài toán mà ta có thể sử dụng cách trực tiếp hay
gián tiếp, học sinh cần hiểu và đọc kỹ đề từng bài toán.

Chương trình có thể được viết theo cách 1 có nội dung code như
sau:
Program Nhietdo_Tuan;
Uses Crt;
Var
t1,t2,t3,t4,t5,t6,t7:
Real; Dem:Byte

Begin
Clrscr;
Write(‘Nhap vao nhiet do cua 7
ngay: ’); Readln(t1,t2,t3,t4,t5,t6,t7);
tb:=(t1+t2+t3+t4+t5+t6+t7)/7;
Dem:=0;
If

t1>tb

then

Dem:=Dem+1; If t2>tb
then Dem:=Dem+1; If
t3>tb

then

Dem:=Dem+1; If t4>tb
then Dem:=Dem+1; If
t5>tb


then

Dem:=Dem+1; If t6>tb
then Dem:=Dem+1; If
t7>tb

then

Dem:=Dem+1;
Writeln(‘Nhiet do trung binh tuan la: ’,tb:8:1);
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Writeln(‘So ngay co nhiet do cao hon trung binh la:
’,dem);
Readln;
End.

Nếu viết theo cách thứ hai ta sẽ có đoạn code được viết như sau:
Program Nhietdo_Tuan;
Uses Crt;
Var A:Array[1..7] of Real;
Tong,tb:Real;
i,dem:byte;
Begin
Clrscr;
Tong:=0; dem:=0;

For i:=1 to 7 do
Begin
Writeln(‘Nhap nhiet do ngay thu’,i,’’);
Readln(A[i]);
Tong:=Tong+A[i];
End;
tb:=Tong/7;
Writeln(‘Nhiet do trung binh cua ca tuan la:
’,tb:8:1); For i:=1 to 7 do
If A[i]>tb then dem:=dem+1;
Writeln(‘So ngay co nhiet do cao hon trung binh la:
’,dem); Readln;
End.
Nếu so sánh 2 cách viết ta có nhận xét như sau: Đối với cách thứ nhất
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

phải khai báo 30 biến đơn, sử dụng 30 lệnh if...then. Còn đối với cách thứ hai
chỉ cần khai báo một mảng gồm 30 phần tử, ta sử dụng lệnh For i:=1 to 30
do...
Như vậy một cách nhìn rõ ràng giáo viên hướng dẫn cho học sinh phân
tích bài toán khi sử dụng biến đơn cùng kiểu dữ liệu, thì việc sử dụng biến
mảng sẽ thuận lợi hơn rất nhiều trong việc thực hiện lập trình các bài toán xử
lý dãy số, học sinh sẽ rút ngắn thời gian và công việc lập trình đỡ vất vả hơn
khi xử lý các bài tập thực hành;
Đối với phần mảng hai chiều dù trong chương trình không có nhưng
giáo viên cũng cần bổ sung cho các em đặc biệt là những học sinh giỏi bộ

môn và có tính tư duy cao. Các hình thức đơn giản nhất của mảng đa chiều là
mảng hai chiều. Một mảng hai chiều, trong bản chất, một danh sách các mảng
một chiều. Để khai báo một mảng số nguyên hai chiều kích thước x, y, bạn sẽ
viết một cái gì đó như sau:
Var ArrayName:Array[1..x,1..y] of element-type;
Trường hợp loại yếu tố có thể là bất kỳ kiểu dữ liệu hợp lệ Pascal và
ArrayName sẽ là một định danh Pascal hợp lệ. Một mảng hai chiều có thể
được hình dung như một bảng, trong đó sẽ có x số hàng và số y của cột. Như
vậy, mỗi phần tử trong mảng a được xác định bởi một tên phần tử có dạng a
[i] [j], trong đó một là tên của mảng, và i và j là những kí hiệu mà duy nhất
xác định mỗi yếu tố trong một;
Mảng nhiều chiều, như mảng một chiều, được khởi tạo bằng cách
chuyển nhượng thông qua, hoặc bằng cách xác định một subscript cụ thể hoặc
sử dụng một cho vòng lặp;
Bài tập: Viết chương trình nhập vào mảng 2 chiều C có n hàng, m cột.
Xuất ra những phần tử của mảng 2 chiều C thỏa điều kiện là những số chẳn.
Program Mang_2C;
Uses Crt;
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

Type mang=Array[1..15,1..15] of integer;
Var c:mang;
m,n:byte;
i,j,k: Integer;
Begin
Clrscr;

Write('Nhap so hang n = '); Readln(n);
Write('Nhap so cot m = ');

Readln(m);

{nhap mang}
For i:=1 to n do
For j:=1 to m do
Begin
Write('C[',i,',',j,']=');
Readln(c[i,j]);
End;
{in matran}
For i:=1 to n do
Begin
For j:=1 to m do
If c[i,j]mod 2= 0 then Write(c[i,j]:6);
End;
Readln;
End.
Trong nội dung này giáo viên vận dụng để bồi dưỡng cho các em học
sinh giỏi bộ môn, có ham thích học tập và nghiên cứu bộ môn;
Bên cạnh các kinh nghiệm tích lũy được, bản thân tôi còn nhận thấy cần
vận dụng nhiều phương pháp giúp cho tôi tập trung vào nghiên cứu đó là:
phương pháp điều tra, phương pháp quan sát, phương pháp phân tích, tổng
hợp, phương pháp thống kê để từ đó có biện pháp điều chỉnh chuyên môn
SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính



Giáo Viên: Lưu Tuấn Anh

giảng dạy cho phù hợp với các đối tượng học sinh;
Rèn luyện kỹ năng lập trình đặc biệt là lập trình Pascal là một việc
không phải một sớm một chiều có thể nhanh chóng giỏi và giải quyết mọi bài
toán. Qua nhiều năm kinh nghiệm giảng dạy bộ môn Tin học, bản thân tôi
thấy nếu muốn các em học sinh giỏi về kỹ năng thực hành lập trình cần trang
bị cho các em theo các cách sau: Xem các code ví dụ (Look at the Example
Code), đừng chỉ đọc các code ví dụ – hãy chạy thử nó (Don’t just Read exam
code – Run It), hãy viết mã riêng của bạn càng sớm càng tốt (Write your own
code as soon as possible), tìm hiểu cách sử dụng một công cụ Debug (Learn to
use a Debugger), Tìm kiếm thêm những nguồn tài tài liệu khác (Seek our
more sources);
* Khả năng áp dụng.
- Đề tài này có thể vận dụng cho tất cả học sinh mới bắt đầu làm quen
ngôn ngữ lập trình Pascal và cho cả việc bồi dưỡng học sinh giỏi và phụ đạo
học yếu kém trong phạm vi nhà trường.
* Lợi ích kinh tế - xã hội.
- Trong quá trình giảng dạy năm học 2015 – 2016 tôi đã áp dụng sáng
kiến nêu trên, qua khảo sát thực tế của học sinh, tôi đã thấy chất lượng bộ môn
đạt kết quả cao hơn so với ban đầu. Các em học sinh rất thích thú và một số
em ham mê nghiên cứu học môn Tin học nhất là các tiết vào giờ thực hành.
Rèn luyện cho học sinh tính tư duy, tính sáng tạo trong quá trình lập trình, các
em tự giải quyết vấn đề mà lâu nay còn vướn mắc chưa giải quyết được.

PHẦN C. KẾT LUẬN VÀ KIẾN NGHỊ.
Để giải một bài toán trên máy tính thật sự không hề đơn giản dù cho
chúng ta biết nếu vận dụng phương pháp toán học thì việc xử lý không hề khó
nhưng khi chúng ta thực hiện yêu cầu trên máy tính bằng ngôn ngữ lập trình
thì vạn điều khó. Song song đó bản thân giáo viên phải trăn trở làm thế nào để

giúp học sinh giải quyết vấn đề một cách nhanh chóng hiệu quả đòi hỏi các

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính


Giáo Viên: Lưu Tuấn Anh

em thật sự tập trung và khơi dậy trong tinh thần các em niềm đam mê học tập;
Muốn được vậy giáo viên bộ môn Tin học cần trang bị dần dần cho
các em các kỹ năng trong các tiết thực hành, giúp các em hiểu cách xây dựng
bài toán, mọ tả thuật toán, đến việc viết chương trình, nhận biết các lỗi và sửa
lỗi chương trình để ngày ngày nâng cao khả năng đồng thời để góp phần nâng
dần chất lượng dạy và học tin ở các trường Trung học cơ sở;
Là một giáo viên tin học tôi muốn nói rằng chúng ta không chỉ dạy lý
thuyết suông mà cần phải rèn luyện cho học sinh các kỹ năng thực hành, khơi
gợi cảm giác dễ chịu mà không phải bị gò bó. Để từ đó học sinh mới nhận
thấy được ưu điểm của việc học chương trình này có lợi hơn ở điểm nào.
Tóm lại để giúp các em viết được một chương trình hoàn chỉnh thỏa
mãn yêu cầu của bài toán đặt ra trên máy tính thì học sinh phải có tư duy lôgic
về thuật toán, khả năng sử dụng máy tính thành thạo, sử dụng các câu lệnh và
khai báo kiểu dữ liệu một cách hợp lý. Với tham vọng nâng cao chất lượng
giảng dạy bộ môn đặc biệt là môn Tin học lớp 8, hy vọng thời gian tới bộ môn
Tin học ở đơn vị chúng tôi đạt nhiều kết quả đáng kể, cũng như chất lượng
giáo dục đào tạo huyện nhà ngày càng phát triển hơn so với các quận huyện
trong toàn thành phố;
Trên đây là một số biện pháp mà tôi đã áp dụng vào dạy Tin học khối
8. Tuy đã được đúc kết từ kinh nghiệm giảng dạy thực tế. Nhưng trong quá
trình thực hiện đề tài này sẽ không tránh khỏi những thiếu sót. Rất mong nhận
được sự góp ý bổ ích của các thầy cô giáo và các bạn đồng nghiệp để bài viết

được hoàn thiện hơn.

SKKN: Phương pháp giảng dạy trực quan cho học sinh làm quen các thiết bị
máy tính



×