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

SKKN phát triển kỹ năng và tư duy lập trình cấu trúc câu lệnh rẽ nhánh thông qua hệ thống bài tập

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 (406.13 KB, 22 trang )

SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HOÁ

TRƯỜNG THPT CHU VĂN AN

SÁNG KIẾN KINH NGHIỆM

PHÁT TRIỂN KỸ NĂNG VÀ TƯ DUY LẬP TRÌNH
CẤU TRÚC CÂU LỆNH RẼ NHÁNH THƠNG QUA
HỆ THỐNG BÀI TẬP

Người thực hiện: Nguyễn Thị Hằng
Chức vụ: Giáo viên
SKKN thuộc lĩnh mực : Tin học

THANH HOÁ NĂM 2021
0


MỤC LỤC
A. ĐẶT VẤN ĐỀ..................................................................................................1
I. Lý do chọn đề tài............................................................................................1
II. Mục đích nghiên cứu.....................................................................................1
III. Đối tượng và phạm vi nghiên cứu................................................................2
1. Đối tượng nghiên cứu...............................................................................2
2. Phạm vi nghiên cứu..................................................................................2
IV. Nhiệm vụ nghiên cứu...................................................................................2
V. Phương pháp nghiên cứu...............................................................................2
1. Nghiên cứu lý thuyết................................................................................2
2. Thực nghiệm sư phạm..............................................................................2
B. GIẢI QUYẾT VẤN ĐỀ..................................................................................3
I. Cơ sở lý luận...................................................................................................3


II. Cơ sở thực tiễn..............................................................................................4
* Thuận lợi:...................................................................................................4
* Khó khăn:...................................................................................................4
III. Biện pháp tổ chức thực hiện........................................................................4
1. Hướng dẫn lý thuyết.................................................................................4
2. Hệ thống bài tập rẽ nhánh cơ bản...........................................................5
3. Bài tập rèn luyện.....................................................................................16
IV. Kết quả kiểm nghiệm.................................................................................16
C. KẾT LUẬN VÀ ĐỀ XUẤT..........................................................................19
I. Một số kết luận rút ra....................................................................................19
II. Đề xuất.........................................................................................................19

1


A. ĐẶT VẤN ĐỀ
I. Lý do chọn đề tài
Là một người giáo viên, khi bước lên bục giảng, chắc chắn rằng ai cũng
có những trăn trở như tơi, đó là: làm sao có thể truyền đạt đầy đủ kiến thức cho
học sinh của mình, làm sao cho học sinh cảm thấy bài học thật hữu ích, đem lại
sự hứng thú, say mê học tập cho các em. Mỗi giáo viên phải có lịng u nghề,
kiến thức, kỹ năng và phương pháp giảng dạy. Tình yêu nghề phải được xác định
ngay từ khi chúng ta bước chân vào con đường sư phạm, và tình u đó ngày
càng được vun đắp thêm theo năm tháng, qua lớp lớp thế hệ học sinh. Kiến thức
thì rộng lớn vơ cùng, mỗi giáo viên phải học tập suốt đời, phải học thêm ở sách
vở, ở đồng nghiệp, ở internet...Kỹ năng được tôi luyện theo năm tháng, mỗi
người có mỗi phương pháp, mỗi cách truyền đạt, sao cho học sinh hiểu bài và có
thể vận dụng để làm bài. Kỹ năng và kiến thức sẽ dần trở thành kinh nghiệm
giảng dạy riêng của mỗi người. Luôn trăn trở với các thế hệ học trò, mong muốn
mang lại những gì tốt đẹp nhất đối với các em, tôi đã xây dựng đề tài: "Phát

triển kỹ năng và tư duy lập trình cấu trúc câu lệnh rẽ nhánh thông qua hệ
thống bài tập", tôi rất mong nhận được nhiều sự đóng góp và phản hồi để đề tài
ngày càng được hồn thiện hơn.
Mơn tin học là mơn có những đặc thù rất riêng, là môn liên quan nhiều
đến cơ sở vật chất: máy tính, máy chiếu, nhưng khơng phải trường nào cũng đáp
ứng được đầy đủ. Vì vậy để gây được hứng thú cho các em khi học tin, mỗi giờ
lý thuyết trên lớp giáo viên phải cố gắng rất nhiều, từ bài bản đến cách thức bố
trí tiết học, để các em có thể nắm vững kiến thức, dẫn đến giờ thực hành mới
hiệu quả. Mặt khác, với nội dung chương trình lớp 11, lần đầu tiên các em được
làm quen với ngơn ngữ lập trình, lần đầu tiên được biết máy tính giải các bài
tốn như thế nào, nên các em cịn nhiều bỡ ngỡ. Ngồi việc phải tìm hiểu cấu
trúc ngơn ngữ, nhớ câu lệnh, mà các em cịn phải có tư duy về tốn học, điều
này cũng gây một phần khó khăn đối với các em có lực học mơn tốn yếu.
Chính vì lý do này, tôi suy nghĩ, và rút kinh nghiệm từ những năm dạy
trước, khi dạy lập trình cho các em, tơi ln hướng các em tới những cái gì đơn
giản, dễ hiểu, gần gũi và quen thuộc nhất để các em nắm vững được kiến thức,
lập trình giải quyết bài tốn, để những tiết học lập trình khơng cịn trừu tượng,
căng thẳng đối với các em, thay vào đó là sự cụ thể, rõ ràng.
II. Mục đích nghiên cứu
Với chủ trương của giáo dục: lấy học sinh làm trung tâm, người thầy đóng
vai trị dẫn dắt học sinh, hướng dẫn các em, và theo phương châm của tôi, phải
dạy làm sao cho học sinh phải hiểu được và làm được. Muốn học sinh hiểu
được, thì giáo viên phải nghiên cứu cách giảng dạy, làm sao truyền đạt được
đúng, đủ kiến thức, nhưng phải dễ hiểu nhất, cụ thể nhất. Giáo viên phải thật sự
tận tâm, nhiệt huyết với bài dạy thì cũng mới truyền được cảm hứng học tập cho
các em, tránh được sự mệt mỏi, buồn ngủ, nhàm chán của tiết học. Khi học sinh
đã hiểu, nắm vững kiến thức của bài học, để học sinh có thể làm được bài tập,
thực hành được thì giáo viên phải có một hệ thống bài tập cụ thể, từ dễ đến khó,
1



từ đơn giản đến phức tạp, để nâng dần khả năng tư duy của các em, để các em có
thế lấy cái dễ áp dụng làm được cái khó. Học sinh thường hay suy nghĩ theo tư
duy lối mòn, thụ động trong việc giải quyết các bài tốn, vì vậy giáo viên cần
phải kích thích sự mày mị tìm hiểu, sáng tạo của các em, dẫn dắt, hướng dẫn
các em tìm ra hướng giải chứ khơng giải cụ thể cho các em.
Khi nghiên cứu đề tài này, mục đích chính của tôi là đưa ra hệ thống bài
tập cụ thể, cách thức dạy, để học sinh có thể dễ hiểu nhất, nắm vững kiến thức
và làm được bài. Học sinh khơng cịn cảm thấy mơn tin khó hiểu, trừu tượng bởi
ngơn ngữ và cấu trúc lập trình. Khi các em đã làm được một số bài, đã thực hành
và chạy được chương trình, các em sẽ rất u thích và hứng thú môn học.
III. Đối tượng và phạm vi nghiên cứu
1. Đối tượng nghiên cứu
- Nghiên cứu nội dung và kiến thức chương tình Tin học phổ thơng, cụ thể
là tin học 11
- Nghiên cứu các tài liệu liên quan đến thuật tốn và ngơn ngữ lập trình Pascal
- Nghiên cứu tâm sinh lý của học sinh THPT
- Nghiên cứu về kỹ năng, phương pháp dạy học, đổi mới theo hướng tích
cực, lấy học sinh làm trung tâm
2. Phạm vi nghiên cứu
Trong phạm vi đề tài này, tôi xin đưa ra một số kinh nghiệm và phương
pháp dạy học nội dung cấu trúc rẽ nhánh (bài 9- sgk tin học 11) thông qua hệ
thống bài tập cụ thể.
IV. Nhiệm vụ nghiên cứu
Để đạt được mục đích nghiên cứu đề ra, cần phải thực hiện những nhiệm
vụ sau:
- Nghiên cứu cơ sở lý luận dạy học
- Nghiên cứu cơ sở thực tiễn, thực trạng dạy và học ở trường THPT
- Nghiên cứu phương pháp truyền đạt, cách thức bố trí bài giảng để tạo
được hứng thú cho học sinh, tạo cho các em sự say mê lập trình

- Xây dựng hệ thống bài tập đa dạng, phù hợp với năng lực của học sinh
V. Phương pháp nghiên cứu
1. Nghiên cứu lý thuyết
- Nghiên cứu các tài liệu về ngôn ngữ lập trình Pascal, các tài liệu về phương
dạy học tốn học, tư duy toán học, các tài liệu về giáo dục học, tâm lý học.
- Nghiên cứu các công văn hướng dẫn của Bộ Giáo dục và Đào tạo, Sở
Giáo dục và Đào tạo về vấn đề đưa Tin học vào chương trình THPT cũng như
các vấn đề về yêu cầu chất lượng giáo dục.
2. Thực nghiệm sư phạm
- Thông qua quá trình dạy, nắm bắt được khả năng và tâm lý của học sinh
khi học môn Tin học
- Thông qua việc trao đổi với giáo viên và đồng nghiệp để hiểu rõ hơn lực
học, khả năng tiếp thu bài của từng lớp để có những thay đổi, điều chỉnh cách
dạy phù hợp từng đối tượng
2


- Kiểm chứng thông qua việc tiến hành giảng dạy trên 2 đối tượng: lớp
thực nghiệm và lớp đối chứng để so sánh kết quả. Lớp đối chứng là theo phương
pháp cũ, giáo viện dạy lý thuyết, có hướng dẫn một vài bài tập ví dụ. Lớp thực
nghiệm áp dung phương pháp mới, lấy học sinh làm trung tâm, giáo viên dẫn
dắt, gợi động cơ, hướng dẫn học sinh giải quyết vấn đề, thực nghiệm đề tài
nghiên cứu. Cụ thể như sau:
Lớp đối chứng
Lớp thực nghiệm
Lớp 11B1
Lớp 11B3
Lớp 11B2
Lớp 11B5
Số lượng

40 hs
42 hs
40 hs
41 hs
Giỏi
5 hs 12.5% 3 hs 7.1%
4 hs
10%
3 hs
7.3%
Khá
19 hs 47.5% 12 hs 28.6% 20 hs 50% 10 hs 24.4%
Trung bình 14 hs 35% 21 hs 50% 13 hs 32.5% 22 hs 53.7%
Yếu
2 hs
5%
6 hs 14.3% 3 hs
7.5%
6 hs 14.6%
Kết quả nghiên cứu được kiểm chứng thông qua quá trình dạy thực
nghiệm, so sánh kiểm tra giữa các lớp có lực học, khả năng tiếp thu bài ngang
nhau. So sánh lớp 11B1 và 11B2, so sánh lớp 11B3 và 11B5.
B. GIẢI QUYẾT VẤN ĐỀ
I. Cơ sở lý luận
* Một số khái niệm về lập trình.
Tin học 11 với nội dung chính là hướng học sinh làm quen với khái niệm
lập trình và ngơn ngữ lập trình, cụ thể là ngơn ngữ lập trình Pascal. Để các em
có thể giải quyết được những bài toán cụ thể. Quá trình giải quyết bài tốn chính
là thực hiện cơng việc: tìm hiểu bài tốn, xác định thuật tốn, và viết chương
trình. Cụ thể, khi đưa ra một bài tốn, giáo viên sẽ hướng học sinh thực hiện 3

bước như sau:
Bước 1: cũng giống như trong toán học, học sinh sẽ phải xác định bài
tốn, chính là đi tìm Input và Output.
- Input: là các thơng tin đã có
- Output: Các thơng tin cần tìm từ Input
Bước 2: Xác định thuật toán
Thuật toán để giải một bài toán là một 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 ấy, từ Input
của bài toán, ta nhận được Output cần tìm.
Bước 3: Viết chương trình (lập trình). Trước khi viết chương trình phải
hiểu được ngơn ngữ lập trình là gì? Lập trình là đi làm cơng việc gì?
Ngơn ngữ lập trình là một hệ thống các kí hiệu tuân theo các quy ước về
ngữ pháp và ngữ nghĩa, dùng để xây dựng các chương trình cho máy tính.
+ Ngữ pháp: Quy ước về quan hệ giữa các ký hiệu. Ví dụ trong ngơn ngữ
Pascal: các ký hiệu Begin, end phải đi thành từng cặp, sau từ khóa if sẽ là một
biểu thức điều kiện, sau đó là từ khóa then.

3


+ Ngữ nghĩa: Quy ước về ý nghĩa của kí hiệu. Ví dụ trong ngơn ngữ
Pascal: dấu + biểu thị cho phép cộng, dấu - biểu thị cho dấu trừ …Phát biểu if
… then … có nghĩa là “nếu … thì là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.
II. Cơ sở thực tiễn
Một số thuận lợi và khó khăn khi thực hiện nghiên cứu đề tài:

* Thuận lợi:
- Môn tin học là một môn mới nên học sinh hứng thú với mơn học, u

thích những giờ thực hành.
- Nhà trường quan tâm, tạo điều kiện về cơ sở vật chất, phòng máy thực
hành, máy chiếu, thư viện sách có nhiều tài liệu, sách tham khảo tin học.
- Đội ngũ giáo viên tin học trẻ, được đào tạo theo đúng chuyên ngành, có
nhiều tâm huyết, thường xuyên trao đổi chuyên môn, học hỏi kinh nghiệm và
góp ý, bổ sung cho nhau.
- Một số học sinh u thích mơn học tự nhiên, đam mê lập trình, nên các
em tỏ ra rất hứng thú và chăm chú trong tiết học lý thuyết, nhiệt tình say sưa giờ
thực hành, điều này mang lại niềm vui và sự động viên lớn cho giáo viên.
* Khó khăn:
- Vì là mơn tự nhiên, liên quan nhiều đến toán học, nên một số em có kiến
thức yếu bên tự nhiên tỏ ra ngại học, không tập trung cao
- Một số học sinh có tư tưởng mơn tin học là mơn phụ, khơng thi đại học,
khơng thi tốt nghiệp nên các em có suy nghĩ học đối phó, khơng chú trọng.
- Do phần lớn là học sinh nơng thơn, gia đình các em hầu như chưa có
máy tính, nên khả năng tự thực hành, ơn bài ở nhà khó.
- Cơ sở vật chất của nhà trường còn nhiều hạn chế cho việc dạy và học
theo phương pháp mới.
III. Biện pháp tổ chức thực hiện
1. Hướng dẫn lý thuyết
Khi dạy lý thuyết về cấu trúc rẽ nhánh, đầu tiên giáo viên phải làm sáng rõ
rẽ nhánh là gì, thơng qua những ví dụ cụ thể từ thực tiễn cuộc sống và trong toán
học.
Vd1: Nếu mai trời mưa thì đường sẽ rất trơn
Vd2: Nếu em học bài chăm chỉ thì em sẽ được điểm cao, khơng thì em sẽ
bị điểm kém
Vd3: Nếu n>0 thì n là số dương
Vd4: Nếu a>b thì giá trị lớn nhất là a, khơng thì giá trị lớn nhất là b
Giáo viên chỉ rõ cho học sinh thấy ở Vd1 và Vd3 là cách diễn đạt rẽ nhánh
dạng thiếu: Nếu... thì....Ở Vd2 và Vd4 là rẽ nhánh dạng đủ: Nếu...thì...khơng

thì ( hoặc có thể nói : Nếu... thì..., ngược lại thì....)
Để diễn đạt những câu lệnh có dạng rẽ nhánh như trên, ngơn ngữ lập trình
Pascal sử dụng 2 dạng cấu trúc rẽ nhánh If- then.
a) Dạng thiếu:
4


If <điều kiện> then <câu lệnh>;
Điều kiện

Đúng

Câu lệnh

Sai

+ Hoạt động: Nếu biểu thức điều kiện đúng thì câu lệnh được thực hiện,
điều kiện sai câu lệnh bị bỏ qua.
Vd1: Nếu n>0 thì n là số dương
=> If n> 0 then write (' n la so duong ');
Vd2: Nếu tam giác có kích thước 3 cạnh a=b=c thì là tam giác đều
=> if (a=b) and (b=c) then write(' la tam giac deu');
b) Dạng đủ:
if < điều kiện> then < câu lệnh 1> else < câu lệnh 2>;

Câu lệnh 2

Sai

Điều

kiện

Đúng

Câu lệnh 1

+ Hoạt động: Nếu biểu thức điều kiện đúng thì câu lệnh 1 được thực hiện,
điều kiện sai câu lệnh 2 được thực hiện.
vd1: if a>b then Max:=a else Max:=b;
vd2: Nếu a chia hết cho 2 thì a là số chẵn, khơng thì a là số lẻ
=> if a mod 2= 0 then write ('a la so chan') else write( ' a la so le ');
2. Hệ thống bài tập rẽ nhánh cơ bản.
Vì đây là nội dung đầu tiên trong chương trình dạy lập trình có cấu trúc,
thuộc bài 9: Cấu trúc rẽ nhánh, học sinh còn bỡ ngỡ khi viết chương trình, chưa
có thời gian để thực hành nhiều. Mặt khác, kiến thức rẽ nhánh được áp dụng rất
nhiều bài tập thực tiễn, và cả những bài tập của những chương sau, vì vậy tơi
muốn đưa hệ thống bài tập để học sinh nắm thật vững kiến thức, thực hành
thành thạo bài tập, và hình thành cho mình kỹ năng giải quyết những bài tập có
liên quan cấu trúc rẽ nhánh.
Hệ thống bài tập mà tôi đưa ra sẽ là từ những bài tập đơn giản và cơ bản
để học sinh có thể nắm vững kiến thức về rẽ nhánh là như thế nào, làm thế nào
để có thể chuyển từ ngơn ngữ tốn học sang câu lệnh lập trình? Những bài tốn
gắn liền với thực tế, và rất hay gặp trong tốn học, để những em có kiến thức
yếu về mơn tốn cũng có thể hiểu rõ được bản chất tốn học, hiểu rõ máy tính có
thể giải quyết các bài tốn tốn học thơng qua chương trình như thế nào. Qua
quá trình dạy học và khảo sát ở những năm trước, tơi nhận thấy nhiều em cịn
mơ hồ, lập trình là cái gì, nó để làm gì, nó có ứng dụng gì trong cuộc sống, có
5



thiết thực không. Nhiều khi các em không hiểu rõ bản chất, ứng dụng của môn
học, các em sẽ cảm thấy khơng cần thiết, sẽ khơng có niềm đam mê thật sự, dẫn
đến tinh thần học rời rạc, không chú tâm. Khi dạy lập trình, tơi thường nhấn
mạnh vào ý nghĩa và ứng dụng thực tế của môn học, và ứng dụng đó chính là đi
giải quyết các bài tốn mà các em đã biết, đang học, và gắn liền với cuộc sống.
Từ đó sẽ đem lại sự hứng khởi cho môn học, ý thức học tập của các em cũng
được nâng cao.
Khi đưa ra một bài toán, bao giờ việc đầu tiên tôi cũng yêu cầu HS xác
định bài tốn, cụ thể là xác định Input và Output, cơng việc này các em đã thành
thạo trong chương trình lớp 10, nên việc xác định khơng gặp khó khăn. Tiếp
theo giáo viên hướng dẫn bài tốn để các em có thể xác định được nội dung rẽ
nhánh của bài toán: "Nếu điều kiện xảy ra thì sẽ thực hiện gì, ngược lại điều kiện
khơng xảy ra thì thực hiện gì?". Khi đã hiểu được nội dung rẽ nhánh của bài
toán, giáo viên sẽ yêu cầu các em chuyển sang ngôn ngữ lập trình Pascal, có thể
những bài tốn đầu các em cịn gặp khó khăn, nhưng sau khi thực hiện một số
bài, các em sẽ quen dần với cách chuyển từ nội dung rẽ nhánh sang câu lệnh rẽ
nhánh, sẽ thành thạo hơn với các câu lệnh đã học. Giáo viên sẽ hướng dẫn kỹ
những bài tập đầu để các em hiểu rõ nội dung sau từ khóa Else là đi với câu lệnh
If nào? để các em phân biệt được sự rẽ nhánh. Đồng thời giáo viên cũng phải
rất chú ý cách trình bày viết câu lệnh, hướng dẫn các em cách viết câu lệnh,
cách trình bày chương tình sao cho khoa học, dễ nhìn và dễ hiểu. Mặt khác,
trong q trình dạy học ở những năm trước, tơi thấy nhìn chung khi học đến
câu lệnh ghép các em đang con rất mơ hồ, thường các em không biết khi nào
nên đặt cặp từ khóa begin ..end, hoặc là tại sao đoạn lệnh này lại có cặp từ
khóa Begin..End. Do đó, khi dạy nội dung cấu trúc rẽ nhánh, tơi đã đưa một số
bài tập có nội dung câu lệnh ghép, và trong q trình dạy, tơi hướng dẫn cụ thể
cho các em nội dung này. Sau khi đã biết chuyển từ nội dung rẽ nhánh sang câu
lệnh có nghĩa là học sinh đã nắm được cấu trúc rẽ nhánh của bài tốn, nắm
vững cấu trúc chương trình, các câu lệnh trong Pascal thì các em có thế viết
được chương trình hồn chỉnh.

Bài tốn 1: Nhập vào 2 số nguyên a, b. Tìm giá trị lớn nhất của 2 số đó (Max)
* HS Xác định bài tốn:
+ Input: 2 số nguyên a,b
+ Output: Giá trị Max (a, b)
Với bài tốn này, giáo viên có thể hướng dẫn học sinh làm theo 2 cách để
làm sáng tỏ câu lệnh rẽ nhánh dạng thiếu và dạng đủ:
a) Rẽ nhánh dạng thiếu:
* GV yêu cầu HS đưa ra ý tưởng bài toán
* GV hướng dẫn: việc tìm ra giá trị lớn nhất giữa 2 số thì thực tế rất đơn
giản, nhưng đối với máy tính thì giải quyết như thế nào? Đầu tiên ta có gán giá
trị Max nhận một trong 2 giá trị a hoặc b. Sau đó đem so sánh giá trị Max với
giá trị còn lại, nếu Max nhỏ hơn giá trị cịn lại thì Max sẽ thay đổi và nhận giá trị

6


đó, ngược lại Max sẽ giữ nguyên giá trị ban đầu, và khơng cần phải thực hiện
cơng việc gì nữa.
* HS xác định nội dung (ND) rẽ nhánh:
Đầu tiên gán Max nhận giá trị là a: Max:=a;
Nếu Max* HS viết câu lệnh rẽ nhánh:
If Max* GV hướng dẫn HS viết chương trình:
Program Tim_max;
Uses crt;
Var a, b: integer;
Begin
Write( ' nhap vao 2 so:');
Readln(a,b);

Max:=a;
If MaxWriteln( 'gia tri lon nhat la:', Max);
Readln;
End.
b) Rẽ nhánh dạng đủ:
* GV yêu cầu HS đưa ra ý tưởng bài toán
* GV hướng dẫn: So sánh 2 giá trị a và b, nếu giá trị a lớn hơn thì Max sẽ
nhận giá trị a, ngược lại Max nhận giá trị b.
* Xác định nội dung (ND) rẽ nhánh:
Nếu a>b thì Max:=a, ngược lại thì Max:=b
* HS viết câu lệnh rẽ nhánh:
If a> b then Max:=a else Max:=b;
* GV hướng dẫn HS viết chương trình:
Program Tim_max;
Uses crt;
Var a, b: integer;
Begin
Write( ' nhap vao 2 so:');
Readln(a,b);
If a>b then Max:=a else Max:=b;
Writeln( 'gia tri lon nhat la:', Max);
Readln;
End.
* GV kiểm tra lại chương trình, nhắc lại ý nghĩa từng câu lệnh
Từ bài toán 1, giáo viên có thể vận dụng để học sinh xây dựng bài tốn
tương tự: Tìm giá trị nhỏ nhất của 2 số a, b (Min). Có thể chỉ cần yêu cầu học
sinh lên viết câu lệnh rẽ nhánh, không cần viết chương trình.
Bài tốn 2: Phát triển bài tốn 1. Tìm giá trị lớn nhất của 3 số nguyên a, b, c
7



* Xác định bài toán:
+ Input: 3 số nguyên a, b, c
+Output: Max (a,b,c)
* GV yêu cầu HS đưa ra ý tưởng bài tốn
* GV Hướng dẫn: Muốn tìm giá trị lớn nhất của 3 hoặc 4 số thì trước hết
chúng ta phải đi tìm giá trị lớn nhất của từng cặp 2 số, sau đó lấy kết quả lớn
nhất đó đi so sánh với số cịn lại. Với bài toán này, giáo viên sẽ hướng các em
tới dạng toán mà trong chương trình có nhiều hơn một lệnh rẽ nhánh, để các em
làm quen, hiểu rõ cấu trúc.
* HS Xác định ND rẽ nhánh:
Nếu a>b thì Max:=a else Max:=b;
Nếu Max* Xác định câu lệnh rẽ nhánh
If a>b then Max:=a else Max:=b;
If Max* HS viết chương trình:
Program Max_3so;
Uses crt;
Var a, b, c: integer;
Begin
Write( ' nhap vao 3 so:');
Readln(a,b,c);
If a>b then Max:=a else Max:=b;
If MaxWriteln( 'gia tri lon nhat la:', Max);
Readln;
End.
* GV kiểm tra lại chương trình, nhắc lại ý nghĩa từng câu lệnh

Bài tốn 3: Nhập vào từ bàn phím số tự nhiên a. Kiểm tra xem a là số
chẵn hay lẻ?
* Xác định bài toán:
+ Input: số tự nhiên a
+ Output: a chẵn hoặc a lẻ
*GV hướng dẫn: Đặt câu hỏi:
- Một số như thế nào là số chẵn, số lẻ?
- Trong ngôn ngữ lập trình Pascal, số chẵn được viết như thế nào?
GV nhắc lại kiến thức về phép toán Div và Mod
* HS xác định ND rẽ nhánh:
Nếu a chia hết cho 2 thì a là số chẵn, ngược lại thì a là số lẻ.
* HS viết câu lệnh rẽ nhánh:
If a mod 2=0 then write (a, ' la so chan ')
else write (a, ' la so le ');
* HS viết chương trình:
8


Program Chan_le;;
Uses crt;
Var a: Byte;
Begin
Write( ' nhap vao so tu nhien:');
Readln(a);
If a mod 2 = 0 then write (a, ' la so chan ')
else write (a, ' la so le ');
Readln;
End.
* GV kiểm tra lại chương trình, nhắc lại ý nghĩa từng câu lệnh, nhắc học
sinh chú ý câu lệnh trước từ khóa Else khơng có dấu ";"

Tương tự bài tốn 2, có thể cho học sinh thực hành, kiểm tra một số có
chia hết cho 3, hoặc cho 5, cho 10. Yêu cầu học sinh lên bảng viết câu lệnh rẽ
nhánh cho từng trường hợp.
Bài tốn 4:Viết chương trình giải phương trình bậc nhất: ax+b = 0
* Xác định bài toán:
+ Input: nhập vào 2 số a,b
+Output: Nghiệm x của phương trình
* Hướng dẫn: Để viết được chương trình, học sinh phải nhớ lại những
trường hợp nghiệm của chương trình bậc nhất 1 ẩn. GV yêu cầu học sinh nhắc
lại cách biện luận giải phương trình bậc nhất
* HS xác định ND rẽ nhánh:
+ Nếu a = 0
- Nếu b = 0 thì phương trình vơ số nghiệm
- ngược lại b<>0 thì phương trình vơ nghiệm
+ Ngược lại nếu a<>0 thì phương trình có nghiệm duy nhất x=-b/a
* HS xác định câu lệnh rẽ nhánh:
+ HS có thể trình bày rẽ nhánh dạng thiếu:
If (a=0) and (b=0) then write (' pt vo so nghiem');
if (a=0) and( b<>0) then write (' pt vo nghiem');
if (a<>0) then write(' pt co nghiem duy nhat: x=',-b/a:5:2);
+ hoặc có thể trình bày rẽ nhánh dạng đủ (cấu trúc If lồng)
if a=0 then
if b=0 then write (' pt vo so nghiem')
else write(' pt vo nghiem')
else write(' pt co nghiem duy nhat x=',-b/a:5:2);
* Chú ý: giáo viên phải hướng dẫn cụ thể, làm sáng tỏ, câu lệnh else đi
với cấu trúc if nào, tránh để học sinh hiểu nhầm bản chất câu lệnh.
* HS viết chương trình:
Program Giai_pt_bac1;
Uses crt;

Var a, b: real;
9


Begin
Write( ' nhap vao 2 so:');
Readln(a,b);
if (a=0) and (b=0) then write (' pt vo so nghiem');
if (a=0) and( b<>0) then write (' pt vo nghiem');
if (a<>0) then write(' pt co nghiem duy nhat: x=',-b/a:5:2);
Readln;
End.
* GV kiểm tra lại chương trình
Bài tốn 5: Giải phương trình bậc 2: ax2+bx+c=0
* Xác định bài toán:
+ Input: nhập vào 3 số nguyên a,b,c
+ Output: nghiệm x của phương trình
* Hướng dẫn: Đây là bài toán quen thuộc mà các em hay gặp trong toán
học, GV yêu cầu HS trình bày cách giải phương trình bậc 2, củng cố lại kiến
thức toán học của các em.
* HS xác định ND rẽ nhánh:
Nếu Delta<0 thì phương trình vơ nghiệm
ngược lại nếu Delta=0 thì pt có nghiệm kép x= -b/2a
ngược lại Delta>0 thì pt có 2 nghiệm phân biệt:
 b  delta
2a
 b  delta
x2=
2a


x1=

* Trong bài tốn này, có câu lệnh ghép, GV cần phải hướng dẫn kỹ cho
HS cách sử dụng câu lệnh ghép, vì sao cần phải sử dụng câu lệnh ghép? Đối với
trường hợp Delta>0, sau câu lệnh Else có nhiều hơn 1 câu lệnh (cụ thể: câu lệnh
Write in kết quả, câu lệnh tính x1, x2) nên các câu lệnh này phải được đặt trong
cặp từ khóa Begin...end
* HS xác định câu lệnh rẽ nhánh:
If Delta<0 then Write( 'phuong trinh vo nghiem')
Else If Delta=0 then Write (' pt co nghiem kep x= ', -b/(2*a))
Else
Begin
Write( ' pt có 2 nghiem phan biet:');
x1:= (-b + sqrt(delta))/(2*a);
x2:= (-b - sqrt(delta))/(2*a);
writeln(‘ x1=’, x1:6:2,' x2:=’, x2:6:2);
End;
* Học sinh viết chương trình:
Program Giai_pt_bac2;
Uses crt;
Var a, b, c: integer;
10


delta, x1, x2: real;
Begin
Write( ' nhap vao 3 so:');
Readln(a, b, c);
Delta:= b*b - 4*a*c;
If Delta<0 then Write( 'phuong trinh vo nghiem')

Else If Delta=0 then Write (' pt co nghiem kep x= ', -b/(2*a))
Else
Begin
Write( ' pt có 2 nghiem phan biet:');
x1:= (-b + sqrt(delta))/(2*a);
x2:= (-b - sqrt(delta))/(2*a);
writeln(‘ x1=’, x1:6:2,’x2:=’, x2:6:2);
End;
Readln;
End.
* GV kiểm tra lại chương trình
 ax  by  m
 cx  dy  n

Bài tập 6: Giải hệ phương trình bậc nhất 2 ẩn: 

* Xác định bài tốn:
+ Input: 4 số a, b, c, d
+ Output: nghiệm x, y của hệ pt.
* Hướng dẫn: GV yêu cầu HS nhắc lại cách giải hệ phương trình bậc nhất
2 ẩn, các trường hợp nghiệm, điều kiện nghiệm thông qua định thức.
* HS xác định ND rẽ nhánh:
- Nếu dd = 0 thì
+ Nếu dx=0 và dy=0 thì hệ phương trình vơ số nghiệm
+ Ngược lại dx<>0 hoặc dy<>0 thì hệ phương trình vơ
nghiệm
- Ngược lại (dd<>0) thì hệ phương trình có nghiệm x=dx/dd, y=dy/dd
* HS xác định câu lệnh rẽ nhánh:
if dd = 0 then
if (dx=0) and (dy=0) then write (' he pt vo so nghiem')

else write (' he pt vo nghiem')
else write (' he pt co nghiem: x=', dx/dd:4:2, 'y=', dy/dd:4:2);
* Học sinh viết chương trình
Program he_pt_bac1;
Uses crt;
Var a, b, c, d, m, n : real;
dd, dx, dy: real;
Begin
write('nhap a='); Readln(a);
11


write('nhap b='); Readln(b);
write('nhap c='); Readln(c);
write('nhap d='); Readln(d);
write('nhap m='); Readln(m);
write('nhap n='); Readln(n);
dd:=a*d-b*c;
dx:=m*d-b*n;
dy:=a*n-c*m;
if dd = 0 then
if (dx=0) and (dy=0) then write (' he pt vo so nghiem')
else write (' he pt vo nghiem')
else write (' he pt co nghiem: x=', dx/dd:4:2, 'y=', dy/dd:4:2);
Readln;
End.
* GV kiểm tra lại chương trình
Bài tốn 7: Tính theo dương lịch, một năm thường có 365 ngày, nếu là
năm nhuận thì có 366 ngày, năm nhuận là năm chia hết cho 400 hoặc chia hết
cho 4 nhưng khơng chia hết cho 100. Hãy lập trình nhập vào năm N, cho biết số

ngày của năm đó?
* Xác định bài toán:
+ Input: Nhập vào năm N
+ Output: nếu N là năm nhuận thì số ngày =366, khơng thì số ngày=365
* Hướng dẫn: Học sinh thường quen với khái niệm năm thường và năm
nhuận, nhưng chưa biết cụ thể tính tốn như thế nào để biết đó là năm thường
hay năm nhuận, GV cần phải giải thích rõ vấn đề này cho HS. GV nhắc lại phép
toán và (And), hoặc ( or).
* HS xác định ND rẽ nhánh:
Nếu (N chia hết cho 400) hoặc (N chia hết cho 4 nhưng khơng chia hết
cho 100) thì số ngày = 366 ngược lại số ngày = 365
* HS xác định câu lệnh rẽ nhánh:
if ( N mod 400 = 0 ) or (( N mod 4=0) and (N mod 100 <>0)) then
SN:=366 else SN:=365;
* GV kiểm tra lại câu lệnh rẽ nhánh, chú ý khi dùng từ khóa or và and,
hướng dẫn kỹ cho những HS chưa viết được.
* Học sinh viết chương trình:
Program Nam_nhuan;
Uses crt;
Var N, SN: integer ;
Begin
Write( ' nhap vao nam can kiem tra: ');
Readln(N);
if (N mod 400 = 0 ) or (( N mod 4=0) and (N mod 100 <>0))
then SN:=366 else SN:=365;
12


Writeln( ' so ngay cua nam la:', SN);
Readln;

End.
* GV kiểm tra lại chương trình
Bài tốn 8: Nhập vào từ bàn phím 3 số nguyên a, b, c kiểm tra xem 3 số
đó có là 3 cạnh của tam giác khơng, nếu là 3 cạnh của tam giác thì tính chu vi,
diện tích của tam giác đó.
* Xác định bài tốn:
+ Input: nhâp 3 số a, b, c
+ Output: nếu a, b, c là 3 cạnh của tam giác thì đưa ra của chu vi (C) và
diện tích của tam giác
* Hướng dẫn: Yêu cầu học sinh nhắc lại điều kiện để 3 giá trị thỏa mãn là
3 cạnh của tam giác?
-> Đk: a, b, c dương và a+b>c và b+c>a và a+c>b (các điều kiện này xảy
ra đồng thời
Nếu 3 giá trị thỏa mãn là 3 cạnh của tam giác thì cơng thức để tính chu vi
và diện tích của tam giác là gì? Yêu cầu học sinh nhớ lại kiến thức tốn học, nhớ
lại hệ thức hê-rơng để tính diện tích tam giác khi biết kích thước 3 cạnh.
* Xác định ND rẽ nhánh:
Nếu (a>0) và (b>0) và (c>0) và (a+b>c) và (b+c>a) và (a+c>b) thì a, b, c
là 3 cạnh tam giác
C=a+b+c;
P= C/2; ( Cần tính P để áp dụng công thức Hê-rông)
S= p( p  a)( p  b)( p  c)
ngược lại a, b, c không là 3 cạnh của tam giác.
* Chú ý: Trường hợp 3 giá trị a, b, c thỏa mãn là 3 cạnh tam giác thì phải
thực hiện đồng thời nhiều cơng việc, giáo viên phải gợi mở, hướng HS sử dụng
câu lệnh ghép.
* Xác định cấu trúc rẽ nhánh:
IF (a>0) and (b>0) and (c>0) and (a+b>c) and (b+c>a) and (a+c>b)
then
Begin

write ( 'a, b, c là 3 canh tam giac');
C:=a+b+c;
P:= C/2;
S:= Sqrt((P*(P-a)*(P-b)*(P-c));
Writeln (' chu vi la:', C);
Writeln (' dien tich la:', S);
End
Else Write ('a, b, c khong la 3 canh cua tam giac');
* Học sinh viết chương trình:
Program Tam_giac1;
Uses crt;
13


Var a, b, c: integer;
C, P: word;
Begin
Write( ' nhap vao 3 so:');
Readln(a,b,c);
IF (a>0) and (b>0) and (c>0) and (a+b>c) and (b+c>a)
and (a+c>b) then
Begin
write ( 'a, b, c là 3 canh tam giac');
C:=a+b+c;
P:= C/2;
S:= Sqrt((P*(P-a)*(P-b)*(P-c));
Writeln ('chu vi la:', C);
Writeln ('dien tich la:', S);
End
Else Write ('a, b, c khong la 3 canh cua tam giac');

Readln;
End.
* GV kiểm tra lại chương trình
Bài tốn 9: Nhập vào 3 cạnh của một tam giác, cho biết tam giác đó
thuộc loại tam giác gì (cân, đều, vng, hay thường)
* Xác định bài tốn:
+ Input: 3 cạnh tam giác: a, b, c
+ Output: tam giác đó là cân hoặc đều hoặc vuông hoặc thường
* Hướng dẫn: Đối với bài tốn này khơng cần kiểm tra điều kiện tam
giác vì đề bài đã cho: kích thước a, b, c là 3 cạnh của tam giác. Nếu bài toán yêu
cầu kiểm tra điều kiện thì ta lại áp dụng điều kiện kiểm tra giống bài toán 8 ở
trên.
Điều kiện để tam giác là tam giác vuông, cân, đều khi nào? yêu cầu học
sinh nhắc lại kiến thức toán học.
+a=b=c
=> tam giác đều
+ a = b hoặc b = c hoặc c = a => tam giác cân
+ (a2=b2+c2) hoặc (b2=a2+c2) hoặc (c2=a2+b2) => tam giác vng
+ trường hợp cịn lại là tam giác thường
*HS xác định ND rẽ nhánh:
Nếu (a=b) and (b=c) thì là tam giác đều,
ngược lại nếu (a=b) hoặc (b=c) hoặc (c=a) thì là tam giác cân
ngược lại nếu (a2=b2+c2) hoặc (b2=a2+c2) hoặc (c2=a2+b2)
thì là tam giác vuông
ngược lại là tam giác thường
* HS xác định cấu trúc rẽ nhánh:
If (a=b) and (b=c) then write(' la tam giac deu')
else
14



If (a=b) or (b=c) or (c=a) then write(' la tam giac can')
else
if (a*a=b*b+c*c) or (b*b=a*a+c*c) or (c*c=a*a+b*b)
then write(' la tam giac vuong')
else write(' la tam giac thuong');
* Học sinh viết chương trình:
Program tam_giac2 ;
Uses crt;
Var a, b,c : byte;
Begin
Write( ' nhap vao 3 canh tam giac:');
Readln(a, b, c);
If (a=b) and (b=c) then write(' la tam giac deu')
else
If (a=b) or (b=c) or (c=a) then write(' la tam giac can')
else
if (a*a=b*b+c*c) or (b*b=a*a+c*c) or (c*c=a*a+b*b)
then write(' la tam giac vuong')
else write(' la tam giac thuong');
Readln;
End.
* GV kiểm tra lại chương trình
Bài tốn 10: Nhập vào 3 số nguyên m, n, k. Kiểm tra xem 3 số có là một cấp
số cộng, nếu 3 số lập thành một cấp số cộng thì tính và đưa ra tổng của 3 số đó.
* Xác định bài toán:
+ Input: 3 số nguyên m, n, k
+ Output: nếu m, n, k là cấp số cộng thì đưa ra tổng (S) của 3 số
* Hướng dẫn: Trong chương trình tốn lớp 11, các em đã được tìm hiểu
kiến thức về cấp số cộng:

Cấp số cộng là một dãy số mà trong đó, kể từ số hạng thứ 2, mỗi số hạng
đều bằng tổng của số hạng đứng ngay trước nó và một số d khơng đổi, nghĩa là:
Un=Un-1+d
Vậy nếu m, n, k là một cấp số cộng thì phải thỏa mãn điều kiện gì? Yêu
cầu học sinh trả lời.
Theo lý thuyết thì n=m+d;
k=n+d
hay nói cách khác: n-m=k-n
* HS xác định ND rẽ nhánh:
Nếu n-m=k-n thì m, n, k là một cấp số cộng: S=m+n+k
ngược lại m, n, k không là cấp số cộng
* HS xác định cấu trúc rẽ nhánh:
if n-m=k-n then
begin
15


writeln (m:2, n:2, k:2, ' la cap so cong');
S:=m+n+k;
Writeln (' tong la:', S);
end
Else writeln (m:2, n:2, k:2, ' khong la cap so cong');
* Học sinh viết chương trình
Program Cap_so_cong;
Uses crt;
Var m, n, k, s: integer;
Begin
Write( ' nhap vao 3 so:');
Readln(m, n, k);
if n-m=k-n then

begin
writeln (m:2,n:2,k:2, ' la cap so cong');
S:=m+n+k;
Writeln (' tong la:',S);
end
Else writeln (m:2, n:2, k:2, ' khong la cap so cong');
Readln;
End.
* GV kiểm tra lại chương trình
3. Bài tập rèn luyện
HS có thể thực hành tại nhà, hoặc thực hành trên phòng máy vào các giờ
thực hành, giáo viên cần phải khuyến khích HS thực hành nhiều để các em thành
thạo với máy tính, nhận ra lỗi và biết cách sửa lỗi lập trình, khuyến khích các em
tìm thêm tài liệu, bài tập, tìm ra những phương pháp lập trình mới, giải quyết
được bài tốn khó hơn, nâng cao khả năng lập trình.
BT1: Nhập vào số tự nhiên a, kiểm tra xem a có là số chính phương hay không
Hướng dẫn: Giáo viên phải chỉ rõ cho HS biết số chính phương là số như thế
nào? Từ đó gợi mở để các em tìm ra điều kiện để kiểm tra số chính phương.
BT2: Nhập vào số bán kính đường tròn, tọa độ điểm A(x,y). Kiểm tra xem A có
thuộc đường trịn hay khơng?
BT3: Kiểm tra một số có là số nguyên tố hay không?
Hướng dẫn: Số nguyên tố là số chỉ có 2 ước là 1 và chính nó.
BT4: Nhập vào một số tự nhiên, kiểm tra số đó có là số hồn hảo?
Hướng dẫn: Số hồn hảo là số có tổng các ước (trừ nó) bằng chính số đó
VD: số 6=1+2+3 ( số 6 có ước 1, 2, 3)
IV. Kết quả kiểm nghiệm
Thơng qua q trình dạy thực nghiệm ở lớp 11B2 và 11B5 năm học 20202021, áp dụng phương pháp đổi mới dạy học, thay đổi tư duy của học sinh, giáo
viên đóng vai trị là người dẫn dắt, gợi mở, học sinh đóng vai trị chủ đạo, giải
quyết vấn đề, tôi nhận thấy sự thay đổi, tiến bộ rõ rệt ở các em:
16



- Các em khơng cịn thụ động trong cách học, tự tìm hiểu, phân tích vấn
đề, nhìn nhận vấn đề, tự tìm ra hướng giải quyết.
- Tiết học lý thuyết luôn sôi động, hào hứng, tiết thực hành luôn nghiêm
túc và hiệu quả.
- HS cảm thấy hứng thú khi tự mình giái quyết được bài tốn, thực hành
chạy chương trình cho ra kết quả chính xác
- Khi GV giao bài tập về nhà, các em tự giác làm bài, tự giác hỏi GV
những chỗ cịn vướng mắc, khó hiểu
- Vì các em đã nắm vững kiến thức rẽ nhánh nên khi gặp bài tập ở những
chương sau có liên quan đến cấu trúc rẽ nhánh, các em không những không bị
qn kiến thức mà cịn nhanh chóng viết được chương trình.
Đối với lớp đối chứng 11B1 và 11B3, vẫn áp dụng phương pháp dạy cũ,
học sinh được làm bài tập và thực hành ít, nên hiệu quả học tập chưa tốt, các em
cịn rất lúng túng khi viết chương trình, rất hay quên cấu trúc câu lệnh. Với
những bài tập ở các chương sau có nội dung rẽ nhánh, thường các em không viết
được, khả năng tự học, tự phân tích bài tốn và thực hành cịn rất hạn chế.
Thơng qua q trình giảng dạy trên lớp, thơng qua các tiết thực hành, bài tập
giao về nhà, đánh giá qua bài kiểm tra 1 tiết. Kết quả thực nghiệm cụ thể như sau:
* Kết quả so sánh lớp 11B1 và 11B2:

Số lượng
Giỏi
Khá
Trung bình
Yếu

Lớp 11B1
40 hs

4 hs
21 hs
12 hs
3 hs

10 %
52.5 %
30 %
7.5 %

5 hs
24 hs
10 hs
1 hs

Lớp 11B2
40 hs
12.5 %
60 %
25 %
2.5 %

17


* Kết quả so sánh lớp 11B3 và 11B5:

Số lượng
Giỏi
Khá

Trung bình
Yếu

Lớp 11B3
42 hs
3 hs
7.1 %
12 hs
28.6 %
22 hs
52.4 %
5 hs
11.9 %

Lớp 11B5
41 hs
4 hs
17 hs
17 hs
3 hs

9.6 %
41.5 %
41.5 %
7.4 %

18


C. KẾT LUẬN VÀ ĐỀ XUẤT

I. Một số kết luận rút ra
Qua những năm giảng dạy, và qua thăm dò hỏi ý kiến học sinh, tôi nhận
thấy việc học lập trình là tương đối khó đối với các em, địi hỏi các em phải có
kiến thức nhất định về mặt toán học, đồng thời phải biết vận dụng phù hợp với từng
cấu trúc cụ thể của ngơn ngữ lập trình mới có thể lập trình giải quyết bài tốn. Tuy
nhiên, nếu như được rèn luyện kĩ năng, thực hành nhiều bài tập cho từng cấu trúc cụ
thể thì học sinh sẽ ghi nhớ, sử dụng thành thạo cấu trúc, từ đó các em thấy hứng thú
với việc học lập trình để giải các bài toán. Mặt khác, khi đưa ra hệ thống bài tập, giáo
viên nên đưa ra những bài toán cụ thể, gần gũi, các em đã từng được học để các em
dễ phân tích, thấy được ứng dụng thực tế của tin học, khơng cịn cảm thấy mơn tin
học trừu tượng, xa lạ. Từ đó kích thích niềm say mê lập trình. Giáo viên đưa ra hệ
thống bài tập từ dễ đến khó, để phân loại học sinh, tìm ra những học sinh có tố chất,
đam mê, và khả năng lập trình, để bồi dưỡng, nâng cao kiến thức cho các em, tạo
nguồn cho đội tuyển học sinh giỏi tin học.
Trên đây là những kinh nghiệm của bản thân trong việc giảng dạy học
sinh kỹ năng và tư duy lập trình cấu trúc câu lệnh rẽ nhánh của ngơn ngữ lập
trình PASCAL. Rất mong nhận được những đóng góp của đồng nghiệp để bản
thân tơi nói riêng và giáo viên tin học nói chung có thể có những cách dạy hay
và phù hợp với đặc trưng bộ môn, với mỗi bài học và đối tượng học sinh.
II. Đề xuất
Để nâng cao hiệu quả trong công tác giảng dạy, tơi có một số đề xuất như sau:
- Nhà trường cần tăng cường cơ sở vật chất của trường học, đặc biệt là
máy tính thực hành của học sinh, các máy tính có cấu hình tốt, chạy ổn định và
được nối mạng.
- Nhà trường cũng như các cơ quan ban ngành có liên quan tạo điều kiện
về vật chất, tinh thần, thời gian để có thể tổ chức các buổi học tập kinh nghiệm,
trao đổi chuyên môn, học các chuyên đề và đặc biệt xây dựng được một đội ngũ
quản trị các phòng máy tại các Nhà trường.
Sầm Sơn, ngày 15 tháng 5 năm 2021
XÁC NHẬN

Tôi xin cam đoan đây là SKKN của mình viết,
khơng sao chép nội dung của người khác.
CỦA THỦ TRƯỞNG ĐƠN VỊ
Người viết SKKN

Nguyễn Thị Hằng

19


TÀI LIỆU THAM KHẢO
[1] Tác giả: Hồ Sĩ Đàm - Hồ Cẩm Hà - Trần Đỗ Hùng - Nguyễn Đức Nghĩa Nguyễn Thành Tùng - Ngô ánh Tuyết , Sách giáo khoa Tin học 11.
[2] Tác giả: Hồ Sĩ Đàm - Nguyễn Thanh Tùng, Sách bài tập tin học 11.
[3] Tác giả: Hồ Sĩ Đàm - Hồ Cẩm Hà - Trần Đỗ Hùng - Nguyễn Đức Nghĩa Nguyễn Thành Tùng - Ngô ánh Tuyết, Sách giáo viên - Tin học 11.
[4] Tác giả: Qch Tuấn Ngọc, Ngơn ngữ lập trình PASCAL (lý thuyết và bài
tập).
[5] Tác giả: Hồ Cẩm Hà (chủ biên), Lê Khắc Thành, Nguyễn Chí Trung. Dạy
học theo chuẩn kiến thức kỹ năng môn tin học 11.

20