Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
<br />
I. Phần mở đầu:<br />
1. Lý do chọn đề tài.<br />
Tin học ở cấp THCS là môn học tự chọn với thời lượng 2 tiết/tuần từ <br />
lớp 6 đến lớp 9. Là môn học mới đưa vào trường phổ thông và có những đặc <br />
thù riêng như liên quan chặt chẽ với sử dụng máy tính. Đặc trưng của môn Tin <br />
học là kiến thức đi đôi với thực hành, đặc biệt phần thực hành còn chiếm thời <br />
lượng nhiều hơn phần lí thuyết. Môn học này giúp học sinh bước đầu làm <br />
quen với phương pháp giải quyết vấn đề theo quy trình công nghệ và kỹ năng <br />
sử dụng máy tính phục vụ học tập và cuộc sống. Tin học có ý nghĩa to lớn đối <br />
với sự phát triển trí tuệ, tư duy thuật toán, góp phần hình thành học vấn phổ <br />
thông cho học sinh.<br />
Qua thực tế trong ba năm giảng dạy môn Tin hoc 8 ̣ ở trường THCS <br />
Lương Thế Vinh – Krông Ana – ĐắkLắk, bản thân tôi nhận thấy rằng nhiều <br />
học sinh còn yếu về khả năng tiếp nhận kiến thức về mặt thuật toán. Thậm <br />
chí còn có một số học sinh không thích lập trình mà chỉ thực hiện gõ các bài <br />
tập chứ không tìm hiểu thuật toán. Do vậy kiên th<br />
́ ưc, ky năng l<br />
́ ̉ ập trình cơ bản <br />
̉ ̣<br />
cua hoc sinh còn yếu.<br />
Trong quá trình giảng dạy bản thân luôn suy nghĩ làm thế nào để các em <br />
tiếp cận một cách tốt nhất, dễ hiểu nhất các thuật toán, áp dụng những cấu <br />
trúc lệnh có sẵn để vận dụng giải quyết các bài toán cơ bản. Chính vì thế tôi <br />
luôn chú trọng đến việc phân tích các dạng bài toán theo các cấu trúc câu lệnh <br />
để học sinh đều có thể tự mình tìm ra các thuật toán viết thành những chương <br />
trình thực hành trên máy.<br />
Vơi nh<br />
́ ưng suy nghi, băn khoăn trăn tr<br />
̃ ̃ ở đo, ban thân tôi đa manh dan l<br />
́ ̉ ̃ ̣ ̣ ựa <br />
̣ ̀ ̀ “Môt sô giai phap đê nâng cao ch<br />
chon đê tai: ̣ ́ ̉ ́ ̉ ất lượng dạy học lập trình <br />
Pascal đối với môn Tin học 8” để có thể giup cac em bi<br />
́ ́ ến những bài toán đơn <br />
giản thành những chương trình chạy được trong máy tính. Hình thành trong các <br />
em ước mơ trở thành những lập trình viên giỏi để phục vụ cho xã hội sau này. <br />
2. Mục tiêu, nhiệm vụ của đề tài.<br />
Dạy học lập trình Pascal trong môn tin học 8 là phải tìm ra những <br />
phương pháp, các bước giải bài toán bằng cách lập trình trên máy vi tính.<br />
Để giúp các em có những phương pháp tốt nhất nhằm giải quyết những <br />
bài toán cơ bản là một nhiệm vụ quan trọng, yêu cầu giáo viên phải tìm tòi <br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 1<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
những giải pháp phù hợp để nâng cao chất lượng giờ dạy Tin học nói chung và <br />
Tin học lớp 8 nói riêng đó là: <br />
Hình thành được cách hướng dẫn cho học sinh tiếp thu các kiến thức <br />
cơ bản về ngôn ngữ lập trình một cách thuận lợi nhất và dễ hiểu nhất.<br />
Hướng dẫn cho học sinh cách giải quyết các bài toán khi áp dụng các <br />
cấu trúc lệnh trong ngôn ngữ lập trình Pascal.<br />
3. Đối tượng nghiên cứu.<br />
Nghiên cứu một số giải pháp để nâng cao chất lượng dạyhọc trong <br />
ngôn ngữ lập trình Pascal.<br />
4. Giới hạn của đề tài.<br />
Phạm vi áp dụng trong cac tiêt h<br />
́ ́ ọc về lập trình Pascal môn Tin hoc 8<br />
̣ <br />
Trường THCS đơn vị tôi đang công tác năm học 2016 2017. <br />
Thời gian thực hiện dự án: Trong 6 tháng.<br />
5. Phương pháp nghiên cứu.<br />
a) Nhóm phương pháp nghiên cứu lý luận<br />
Phương pháp phân tích tổng hợp tài liệu.<br />
+ Tham khảo sách giáo khoa Tin học lớp 6.<br />
+ Tham khảo hướng dẫn Tin học lớp 6 dành cho giáo viên.<br />
+ Tham khảo các tài liệu trên mạng internet.<br />
Phương pháp khái quát hóa các nhận định độc lập.<br />
b) Nhom ph<br />
́ ương pháp nghiên cứu thực tiễn<br />
Phương pháp điều tra.<br />
Phương pháp tổng kết kinh nghiệm giáo dục. <br />
+ Tham khảo những kinh nghiệm của đồng nghiệp đi trước.<br />
+ Tham khảo kinh nghiệm của các trường bạn.<br />
Phương pháp nghiên cứu các sản phẩm hoạt động.<br />
Phương pháp lấy ý kiến chuyên gia.<br />
Phương pháp khảo nghiệm, thử nghiệm.<br />
+ Thử áp dụng các giải pháp vào quá trình giảng dạy Tin học ở lớp 8a4, <br />
8a5 trường THCS Lương Thế Vinh.<br />
II. Phần nội dung<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 2<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
1. Cơ sở lý luận:<br />
Theo Nghị quyết số 29NQ/TW Hội nghị Trung ương 8 khóa XI về đổi <br />
mới căn bản, toàn diện giáo dục và đào tạo và Nghị quyết số 44/NQCP ban <br />
hành Chương trình hành động của Chính phủ thực hiện Nghị quyết số 29/NQ<br />
TƯ ngày 04 tháng 11 năm 2013 Hội nghị lần thứ tám Ban Chấp hành Trung <br />
ương khóa XI:<br />
Đẩy mạnh ứng dụng công nghệ thông tin và truyền thông trong dạy và <br />
học.<br />
Phát huy vai trò của công nghệ thông tin và các thành tựu khoa học <br />
công nghệ hiện đại trong quản lý nhà nước về giáo dục, đào tạo.<br />
Từng bước hiện đại hóa cơ sở vật chất kỹ thuật, đặc biệt là hạ tầng <br />
công nghệ thông tin.<br />
Ngôn ngữ lập trình Pascal chính là sử dụng ngôn ngữ lập trình để giải <br />
quyết các bài toán. Chính vì vậy kiến thức về toán học là hết sức quan trọng, <br />
muốn lập trình được thì yêu cầu học sinh phải nắm kiến thức về Toán học khi <br />
đó mới có thể tiến hành tìm ra hướng đi cho từng bài toán cụ thể. Đây là một <br />
vấn đề vô cùng khó khăn đối với các học sinh yếu và kém về môn Toán khi <br />
tiếp cận với lập trình Pascal.<br />
2. Thực trạng vấn đề nghiên cứu.<br />
Qua quá trình giảng dạy tôi nhận thấy rằng đa số học sinh gặp khó khăn <br />
nhiều khi học các tiết học về chương trình và viết chương trình bằng ngôn <br />
ngữ lập trình Pascal. Nhiều em không hiểu ý nghĩa của các câu lệnh, quá trình <br />
giải một bài toán và không tìm ra được thuật toán nên các em học theo kiểu <br />
máy móc, học thuộc không hiểu về quy trình lập trình. Vẫn còn những học <br />
sinh học tập một cách thụ động, chỉ chờ thầy, cô đọc cho chép, hoặc trả bài <br />
một cách đối phó hay lười suy nghĩ… Một phần cũng do giáo viên hay sử dụng <br />
các phương pháp dạy học cũ là đọc chép, lý thuyết nhiều mà ít thực hành. Đa <br />
số các em rất khó giải quyết các bài toán, đặc biệt là không biết áp dụng các <br />
câu lệnh vào từng bài toán cụ thể. Nhiều em kỷ năng phân tích bài toán còn rất <br />
yếu.<br />
Là môn học sử dụng ngôn ngữ lập trình Pascal (ngôn ngữ viết bằng <br />
Tiếng Anh) nên các em có nhiều bỡ ngỡ vì đây là lần đầu tiên các em biết đến <br />
khái niệm lập trình và hiểu nghĩa các từ khóa bằng Tiếng Anh. Mặt khác là <br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 3<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
môn học vận dụng kiến thức về Toán học rất khó cho các em trong quá trình <br />
lập trình.<br />
Theo tôi, kiến thức không bao giờ là cô lập, không đứng độc lập mà nó <br />
có mối liên hệ chặt chẽ với nhau. Nếu chúng ta không học hỏi, trau dồi kiến <br />
thức ở những môn học khác thì cũng giống như “con chuột chui vào sừng trâu; <br />
càng chui sâu càng hẹp” mà thôi. Những hạn chế mà đề tài đưa ra cũng sẽ <br />
được khắc phục nếu như cả giáo viên và học sinh đều không ngừng học hỏi, <br />
trau dồi kiến thức ở những môn học khác có liên quan thì sẽ thu lại kết quả <br />
khả quan.<br />
3. Nội dung và hình thức của giải pháp:<br />
a. Mục tiêu của giải pháp<br />
Thực hiện đề tài này, tôi mong muốn có thể nâng cao được chất lượng <br />
học tập ở môn Tin học của học sinh. Đồng thời tôi cũng muốn đưa ra một vài <br />
kinh nghiệm của mình để có thể giúp đồng nghiệp trong quá trình giảng dạy.<br />
b. Nội dung và cách thức thực hiện giải pháp.<br />
Từ thực trang trên tôi xin đ<br />
̣ ưa ra một số giai pháp nhăm nâng cao chât<br />
̉ ̀ ́ <br />
lượng dạy học lập trình Pascal đối với môn Tin hoc 8:<br />
Đối với giáo viên: <br />
Cần phải nắm vững các phương pháp dạy học Tin học nhằm phát huy <br />
tính tích cực, chủ động của học sinh trong học tập. Để nâng cao chất lượng <br />
dạy học môn Tin học, giáo viên phải tiếp cận nội dung bài và lựa chọn các <br />
phương pháp, xây dựng hệ thống câu hỏi logic, phù hợp với ba đối tượng: <br />
giỏi, trung bình, yếu. Từ đó dẫn dắt học sinh tự khám phá kiến thức, không <br />
thụ động ghi nhận kiến thức mà giáo viên cung cấp, phải có sự phối hợp giữa <br />
hoạt động dạy và hoạt động học trên cơ sở lấy học sinh làm trung tâm.<br />
Để tạo hứng thú học tập và hoạt động tích cực chủ động của học sinh, <br />
giáo viên phải phối hợp nhuần nhuyễn các phương pháp dạy học. Giáo viên <br />
phải tích hợp các môn học khác nhau trong mỗi tiết dạy.<br />
Tùy theo từng dạng bài mà giáo viên sử dụng phương pháp dạy học và <br />
lập kế hoạch, chuẩn bị nội dung dạy học cho phù hợp. Sau đây là một số giải <br />
pháp:<br />
Tìm hiểu các từ khóa.<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 4<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
Trong mỗi bài học việc tìm hiểu nghĩa các từ khóa rất quan trọng, phải <br />
làm cho các em hiểu được ý nghĩa của các từ khóa trước khi yêu cầu các em <br />
vận dụng nó vào công việc viết chương trình hay cấu trúc lệnh. Vì mỗi cấu <br />
trúc lệnh của Pascal đều có nghĩa của nó. Nếu công việc này nếu chúng ta cho <br />
học sinh hiểu được thì xem như chúng ta đã đạt được 30% mục tiêu bài học.<br />
Ví dụ:<br />
Write nghĩa là viết, ở đây chúng ta có thể nói rõ cho học sinh biết viết <br />
ra màn hình.<br />
Read nghĩa là đọc, ở đây ta có thể hiểu là đọc (nạp) dữ liệu vào cho <br />
máy tính.<br />
If ... then ... else...: có nghĩa là Nếu ... thì .... ngược lại ...<br />
While ... do...: Trong khi ... thì làm việc ...<br />
Begin....end.: Bắt đầu.....kết thúc.<br />
Cho học sinh thực hiện và luyện tập những hoạt động tương tự <br />
với nội dung và mục tiêu dạy học:<br />
+ Dạy lý thuyết.<br />
Phát hiện những hoạt động tương tự với nội dung.<br />
Ví dụ: <br />
Cách đặt tên chương trình, biến trong Pascal với đặt tên tệp.<br />
Cấu trúc lệnh rẽ nhánh với các hoạt động có điều kiện trong thực tế.<br />
Cấu trúc lệnh lặp với những hoạt động lặp lại hàng ngày.<br />
Các thao tác tìm phần tử, max, min trên dãy số với các hoạt động tìm <br />
người nặng nhất, cao nhất trong lớp.<br />
Thao tác hoán đổi hai giá trị với hoạt động hoán đổi hai ly nước đường, <br />
muối.<br />
...<br />
Phân tách hoạt động thành những thành phần.<br />
* Bài 2 . Làm quen với chương trình và ngôn ngữ lập trình <br />
Để dạy bài này và giúp học sinh hiểu được chương trình và ngôn ngữ <br />
lập trình thì giáo viên phải giúp học sinh tìm hiểu các hoạt động sau:<br />
Hoạt động 1: Các thành phần của ngôn ngữ lập trình.<br />
Đối với phần này giáo viên cần nêu rõ các thành phần cơ bản tạo nên <br />
ngôn ngữ lập trình đó là: <br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 5<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
+ Các từ để viết thành lệnh trong chương trình;<br />
VD: Program, var, Begin.. end, Writeln…<br />
+ Các ký hiệu được viết theo quy tắc: Quy định về viết các từ và thứ tự <br />
của nó. <br />
VD: Từ nào viết trước, từ nào viết sau, các từ được ngăn cách nhau bởi <br />
dấu cách hoặc nhiều dấu cách, cuối một số lệnh phải có dấu “;”…..<br />
VD: Khai báo tên chương trình phải dùng từ khóa: Program; bắt đầu <br />
chương trình dùng từ khóa Begin và kết thúc chương trình phải là từ khóa <br />
end…. Nếu viết sai quy tắc máy sẽ báo lỗi.<br />
Trong phần này giáo viên cần nhấn mạnh các quy tắc khi viết lệnh cho <br />
chương trình.<br />
Hoạt động 2: Cấu trúc chung của chương trình.<br />
Để viết được chương trình thì bắt buộc học sinh phải nắm được cấu <br />
trúc chung của một chương trình. Giáo viên phải nêu rõ 2 phần của chương <br />
trình:<br />
+ Phần khai báo thường gồm các câu lệnh dùng để khai báo tên chương <br />
trình (Program); khai báo hàm thư viện (uses crt); khai báo biến (var); khai báo <br />
hằng (Const)…Phần khai báo có thể có hoặc không. Giáo viên nhấn mạnh cho <br />
học sinh hiểu hơn: Nếu có phần khai báo thì nó phải được đặt trước phần thân <br />
chương trình.<br />
+ Phân thân của chương trình gồm các câu lệnh mà máy tính cần thực <br />
hiện (Đây là phần bắt buộc phải có): Bằng từ khóa Begin…End. Từ khóa <br />
Begin để cho biết điểm bắt đầu và từ khóa end để cho biết điểm kết thúc của <br />
một chương trình. <br />
Giáo viên đưa ra một ví dụ và cho học sinh tự nhận biết các phần của <br />
cấu trúc chung của chương trình.<br />
Ví dụ: <br />
Program toilapascal; <br />
Phần khai báo<br />
Uses crt; <br />
Begin<br />
Writeln(‘Rat vui vi ban den vơi pascal’); Phần thân<br />
End. <br />
* Bài 3. Chương trình máy tính và dữ liệu<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 6<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
Để giúp học sinh hiểu về một chương trình máy tính và các kiểu dữ liệu <br />
sử dụng trong chương trình thì giáo viên phải yêu cầu học sinh tìm hiểu các <br />
hoạt động sau:<br />
Hoạt động 1: Các kiểu dữ liệu thường dùng.<br />
Hoạt động này cần giúp học sinh biết được để máy tính hiểu được <br />
thông tin đưa vào, xử lý thông tin, thông tin đưa ra trong ngôn ngữ lập trình thì <br />
phải cần đến các kiểu dữ liệu được định nghĩa sẵn:<br />
+ Kiểu số nguyên: Integer<br />
+ Kiểu số thực: Real<br />
+ Kiểu ký tự: Char<br />
+ Kiểu xâu ký tự: String<br />
+………..<br />
Trong hoạt động này giáo viên cần làm rõ: Tùy thuộc vào yêu cầu của <br />
từng bài toán để chúng ta khai báo dữ liệu của bài toán đó thuộc kiểu dữ liệu <br />
nào?<br />
Ví dụ : <br />
+ Đối với bài toán nhập xuất họ và tên học sinh thì biến hoten phải khai <br />
báo kiểu dữ liệu string.<br />
+ Đối với bài toán “Kiểm tra N là số chẵn hay lẻ ” thì biến N phải khai <br />
báo kiểu Integer;<br />
Khi khai báo kiểu dữ liệu thì giáo viên cần nhắc học sinh chú ý đến <br />
phạm vi sử dụng của các kiểu dữ liệu. Khai báo đúng kiểu dữ liệu có nghĩa là <br />
phần nào các em đã biết nắm bắt được yêu cầu của bài lập trình.<br />
Hoạt động 2: Lệnh nhập xuất của chương trình.<br />
Đối với hoạt động này giáo viên cần làm rõ cho học sinh hiểu được quá <br />
trình trao đổi dữ liệu giữa con người và máy tính thì phải cần đến lệnh nhập <br />
xuất dữ liệu.<br />
+ Lệnh nhập: Là lệnh đưa dữ liệu vào cho chương trình được thực hiện: <br />
Readln(giá trị dữ liệu cần nhập);<br />
VD: Nhập vào một số nguyên N từ bàn phím. Viết chương trình kiểm tra <br />
xem N là số chẵn hay số lẽ?<br />
<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 7<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
Đối với bài toán này thì yêu cầu phải nhập số nguyên N bằng lệnh: <br />
Readln(N);<br />
+ Lệnh xuất: Là lệnh đưa kết quả ra màn hình được thực hiện: <br />
Writeln(giá trị cần xuất);<br />
VD: Muốn đưa kết quả S ra màn hình: Writeln(S);<br />
Trong hoạt động này giáo viên cần nhấn mạnh vai trò của việc nhập <br />
xuất dữ liệu khi viết chương trình.<br />
* Bài 4. Sử dụng biến trong chương trình<br />
Để dạy bài này và giúp học sinh hiểu được công cụ biến trong chương <br />
trình, biết cách sử dụng áp dụng biến vào từng bài toán cụ thể thì giáo viên <br />
phải giúp học sinh tìm hiểu qua các hoạt động sau:<br />
Hoạt động 1: Tìm hiểu về công cụ biến trong chương trình.<br />
Ở hoạt động này giáo viên phải nói rõ cho học sinh hiểu để lưu trữ dữ <br />
liệu và xử lý dữ liệu trong chương trình thì cần đến một công cụ lập trình đó <br />
là biến. Biến dùng để lưu trữ dữ liệu và khi nào cần xử lý dữ liệu thì chỉ cần <br />
tìm đến vị trí của biến cần lưu.<br />
Ví dụ: Để tính tổng của a+b với giá trị a, b được nhập từ bàn phím .<br />
Do không biết giá trị a,b được nhập vào là bao nhiêu nên phải sử dụng <br />
hai biến a, b để lưu giá trị cần nhập vào trong vùng nhớ. Muốn thực hiện tính <br />
tổng ta sử dụng lệnh: Writeln(a+b) khi đó chương trình sẽ tự tìm đến vị trí các <br />
biến để thực hiện phép toán a+b.<br />
Giáo viên cần nhấn mạnh cho học sinh hiểu giá trị của biến có thể thay <br />
đổi trong quá trình thực hiện chương trình.<br />
Hoạt động 2: Cách sử dụng biến trong chương trình. <br />
Đối với hoạt động này giáo viên phải giúp học sinh biết được cách sử <br />
dụng các biến trong chương trình. <br />
+ Thực hiện tính toán giá trị cho biến;<br />
+ Gán giá trị cho biến bằng lệnh: Tên biến:= Biểu thức cần gán giá trị cho <br />
biến.<br />
Giáo viên đưa ra ví dụ để học sinh nắm bắt cách gán giá trị cho biến:<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 8<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
Ví dụ: i:=1 > Gán giá trị 1 cho biến nhớ i;<br />
Giáo viên phải đưa ra chú ý cho học sinh hiểu tránh trường hợp học sinh <br />
gán giá trị tùy tiện đó là: Kiểu dữ liệu của biểu thức cần gán giá trị cho biến <br />
phải trùng với kiểu dữ liệu của biến, khi gán giá trị mới thì giá trị cũ bị mất đi.<br />
Ví dụ: x là biến được khai báo kiểu dữ liệu số nguyên<br />
Vậy x= a/b là sai bởi vì biểu thức a/b có kiểu dữ liệu phải là số thực.<br />
* Bài 5. Từ bài toán đến chương trình<br />
Đây là bài học rất quan trọng trong chương trình lập trình Pascal bởi vì <br />
bài học này sẽ giúp các em tìm ra đựơc con đường lập trình từ một bài toán cụ <br />
thể đến với chưong trình máy tính. Để học sinh hiểu được nội dung bài học <br />
này có nghĩa là giáo viên đã thành công một nửa trong quá trình giúp các em <br />
giải toán bằng ngôn ngữ lập trình. Để giải quyết một bài toán thì việc học sinh <br />
xác định được bài toán là bước vô cùng quan trọng, đó chính là bước đầu học <br />
sinh biết được bài toán cho gì và cần làm công việc gì?<br />
Hoạt động 1: Quá trình giải bài toán trên máy tính.<br />
Đối với hoạt động này thì giáo viên phải hình thành cho học sinh biết <br />
quá trình từ một bài toán cụ thể để viết thành chương trình gồm những bước <br />
đó là:<br />
+ Xác định bài toán<br />
+ Mô tả thuật toán<br />
+ Viết chương trình<br />
Ví dụ: Tìm số lớn nhất trong 4 số a,b,c,d. In ra màn hình số lớn nhất?<br />
Ta cần xác định cho bài toán:<br />
+ Thông tin vào: Bốn số a,b,c,d<br />
+ Thông tin ra: Số lớn nhất Max.<br />
+ Mô tả thuật toán: <br />
* Giả sử số lớn nhất là a: Max:=a; <br />
* So sánh Max với số b. Nếu Max a)<br />
Ba số a,b,c là độ dài 3 cạnh tam (a*a + b*b = c*c) or (a*a + c*c = <br />
giác vuông b*b) or (b*b + c*c = a*a)<br />
+ Viết được thuật toán theo ngôn ngữ tự nhiên (Tiếng Việt).<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 18<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
+ Từ thuật toán ngôn ngữ tự nhiên dịch sang ngôn ngữ Pascal, ở thao tác <br />
này giáo viên hướng dẫn cho học sinh chuyển theo nghĩa các từ khóa và các ký <br />
hiệu Pascal.<br />
Ví dụ 1: Nhập vào một số nguyên N từ bàn phím. Viết chương trình <br />
kiểm tra xem N là số chẵn hay số lẽ?<br />
+ GV hướng dẫn và yêu cầu học sinh nêu thuật toán.<br />
<br />
Thuật toán (theo ngữ tự nhiên) Mã hóa giải thuật<br />
<br />
1. Nhập số nguyên n. Realln(n);<br />
2. Kiểm tra nếu n chia hết cho 2 thì n If n mod 2 = 0 then Write(n,'so chan')<br />
số chẵn, ngược lại n số lẻ. else Write(n,'so le');<br />
+ Yêu cầu HS dựa vào cấu trúc của một chương trình Pascal hoàn thành <br />
chương trình.<br />
Program vidu1;<br />
Uses crt;<br />
Var n: longint;<br />
Begin<br />
clrscr;<br />
Write('n = '); Readln(n);<br />
If n mod 2 = 0 then Write(n,'so chan')<br />
else Write(n,'so le');<br />
Readln<br />
End.<br />
+ Giáo viên đưa chương trình vào Turbo Pascal hướng dẫn học sinh dịch <br />
và sữa lỗi.<br />
+ Chạy chương trình và kiểm chứng kết quả.<br />
Ví dụ 2: <br />
Viết chương trình giải phương trình bậc nhất ax + b = 0, với a, b là các <br />
số thực nhập vào từ bàn phím.<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 19<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
<br />
<br />
<br />
Giải thuật(theo ngữ tự nhiên) Mã hóa giải thuật<br />
<br />
Nhập a,b Readln(a); Readln(b);<br />
Kiểm tra a với 2 trường hợp<br />
+ Nếu a khác 0 thì x = b/a If a 0 then Write('x = ', b/a:8:2)<br />
+ Nếu a bằng 0 thì kiểm tra b. Nếu b else If b = 0 then Write ('PT VSN')<br />
bằng 0 thì phương trình có vô số else Write('PT VN');<br />
nghiệm, ngược lại phương trình vô <br />
nghiệm<br />
+ Yêu cầu HS dựa vào cấu trúc của một chương trình Pascal hoàn thành <br />
chương trình.<br />
Program Phuong_trinh;<br />
Uses crt;<br />
var a,b:real;<br />
Begin<br />
Clrscr;<br />
Write('Nhap he so a = '); readln(a);<br />
Write('Nhap he so b = '); readln(b);<br />
If a 0 then Write('x = ', b/a:8:2)<br />
else If b = 0 then Write ('PT VSN')<br />
else Write('PT VN');<br />
Readln<br />
End.<br />
* Bài tập về câu lệnh lặp với số lần biết trước.<br />
+ Đối với dạng này việc đầu tiên giáo viên phải yêu cầu học sinh tìm <br />
được hoạt động lặp của bài toán.<br />
+ Giáo viên yêu cầu học sinh xác định được điều kiện để dừng vòng <br />
lặp.(Giá trị Max).<br />
+ Viết được thuật toán theo ngôn ngữ tự nhiên (Tiếng Việt)<br />
+ Từ thuật toán ngôn ngữ tự nhiên dịch sang ngôn ngữ Pascal.<br />
<br />
<br />
<br />
GV: Trần Thị Tứ Trường THCS Lương Thế Vinh – Krông Ana – ĐắkLắk 20<br />
Một số giải giáp nhằm nâng cao chất lượng dạy học lập trình Pascal đối với môn Tin <br />
học 8<br />
Ví dụ: Để tính tổng n số tự nhiên s=1+2+…+n.<br />
+ GV hướng dẫn và yêu cầu học sinh nêu thuật toán.<br />
+ GV yêu cầu học sinh dịch sang ngôn ngữ Pascal từ thuật toán.<br />
Thuật toán (theo ngữ tự nhiên) Mã hóa giải thuật<br />
<br />
1. Nhập số nguyên n; Realln(n);<br />
2. S:=S+i; i:=i+1;<br />
For i:=1 to n do S:=S+I;<br />
3. Nếu i