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