intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Sáng kiến kinh nghiệm THCS: Kinh nghiệm dạy lập trình Pascal

Chia sẻ: Caphesua | Ngày: | Loại File: DOC | Số trang:21

36
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục đích nghiên cứu của đề tài nhằm nâng cao chất lượng dạy và học bộ môn Tin học. Tạo động lực thúc đẩy phong trào thi đua học tập ở học sinh. Tạo điều kiện thuận lợi cho những học sinh có năng lực, có niềm đam mê, có sáng tạo trong học tập bộ môn, đặc biệt là môn học Pascal. Lựa chọn được đội tuyển dự thi học sinh giỏi các cấp có kết quả cao. Làm cơ sở cho các em định hướng và chọn lựa ngành nghề thích hợp trong tương lai.

Chủ đề:
Lưu

Nội dung Text: Sáng kiến kinh nghiệm THCS: Kinh nghiệm dạy lập trình Pascal

  1. I. PHẦN MỞ ĐẦU 1. Lí do chọn đề tài: Tin học là một môn học đã được đưa vào giảng dạy  ở  các trường THCS từ  rất   lâu, nhằm giúp cho học sinh hiểu được vai trò của Máy tính và Khoa học máy tính đối  với sự  phát triển của một xã hội hiện đại; có khả  năng lựa chọn, sử  dụng được các  thiết bị và phần mềm thông dụng. Ngôn ngữ lập trình Pascal là một ngôn ngữ lập trình vở lòng (cơ bản nhất) trong   các chương trình tin học đại cương. Pascal là một ngôn ngữ lập trình dùng để viết các  chương trình ứng dụng trên máy tính.  Pascal không chỉ là môn học được đưa vào giảng dạy ở bộ môn Tin học 8 mà nó  còn được lựa chọn để luyện thi HSG cấp huyện, cấp tỉnh trên địa bàn tỉnh Đăk Lăk.  Qua quá trình giảng dạy, bồi dưỡng, dự giờ đồng nghiệp và tìm hiểu học sinh,   đặc biệt là qua các cuộc thi HSG hằng năm, tôi nhận thấy có một số vấn đề như sau:  ­ Học sinh không muốn học môn lập trình Pascal. ­ Học sinh gặp khó khăn khi làm bài tập. ­ Khó lựa chọn được học sinh vào đội tuyển tham gia bồi dưỡng HSG Tin học 8. ­ Học sinh không muốn đăng ký học bộ môn này để thi HSG. ­ Có học sinh tham gia dự thi HSG Tin học 8 hằng năm nhưng không đạt. ­ Một số  các thầy cô giảng dạy, do trình độ  học sinh còn nhiều hạn chế nên có   người nảy sinh tâm lý chán nản cho rằng mình có giảng nhiều, nói nhiều mà học sinh  không chịu học, không tư duy thì bỏ công sức cũng chẳng đem lại tác dụng gì cả. Từ  tâm lý đó lời giảng của một số thầy cô chỉ chuẩn bị sơ lược, nông cạn. Họ đã vô tình  làm tắt nguội ở các em lòng đam mê, nghiên cứu môn “Lập trình”. * Nguyên nhân: ­ Một số  gia đình lại có ý hướng con em đầu tư  vào các môn học như  Toán,   ̣ Ngoai ng ư, … đ ̃ ể  sau này các em có thể  đi vào các ngành nghề  có thể  kiếm được   nhiều tiền. Vì vậy một số  em có ý thức xem nhẹ bộ  môn, không đi sâu vào học tập,   nghiên cứu hoặc học đối phó. ­ Phần lớn học sinh còn phải tham gia công việc gia đình và việc kiếm sống nên   thời gian học tập, nghiên cứu, đầu tư còn hạn chế. Ý thức vượt khó trong học tập của   các em chưa cao. ­ Nhiều học sinh còn lơ là trong việc học, không chịu học bài, không chịu nghiên  cứu thêm kiến thức, tâm lí chủ  quan. Từ  đó kết quả  các bài kiểm tra không đạt dẫn  đến chán nản. ­ Chương trình Tin học 8 (mảng lập trình) rất rộng mà thời lượng thực dạy và   cho học sinh thì rất ít nên không thể truyền tải đầy đủ hết kiến thức cho các em. ­ Việc đổi mới phương pháp dạy học, giáo viên có sử  dụng phương pháp mới  nhưng hiệu quả chưa cao, chưa có tính sáng tạo, chưa có sự linh hoạt, chưa kích thích   tư duy sáng tạo, chưa phát huy tính tích cực của học sinh. Đặc biệt hơn nữa là về kiến                      Trang  1
  2. thức “Lập trình” cả  giáo viên và học sinh đều chưa đầu tư  một cách thích đáng bởi  thời gian quá ngắn mà nội dung thì khó không thể  truyền đạt hết trong một vài tiết   học, nếu như không có những giải pháp phù hợp. Vì vậy, giáo viên và học sinh thường   hay lơ là và xem nhẹ nên kết quả thường không đạt hiệu quả như mong muốn. 2. Mục tiêu, nhiệm vụ của đề tài: ­ Nhằm nâng cao chất lượng dạy và học bộ môn Tin học. ­ Tạo động lực thúc đẩy phong trào thi đua học tập ở học sinh. ­ Tạo điều kiện thuận lợi cho những học sinh có năng lực, có niềm đam mê, có  sáng tạo trong học tập bộ môn, đặc biệt là môn học Pascal. ­ Lựa chọn được đội tuyển dự thi học sinh giỏi các cấp có kết quả cao. ­ Làm cơ sở cho các em định hướng và chọn lựa ngành nghề thích hợp trong  tương lai. ­ Tích lũy kinh nghiệm trong công tác giảng dạy, bồi dưỡng HSG môn Tin học ở  bậc THCS cụ thể là học sinh giỏi khối lớp 8. 3. Đối tượng nghiên cứu: ­ Học sinh học môn tin học 8. ­ Giáo viên tham gia giảng dạy Tin học 8. 4. Giới hạn của đề tài:                                                                      ­ Theo dõi, nghiên cứu và đề ra một số biện pháp giúp học sinh học tốt môn Tin  học 8 Trường THCS Nguyễn Trường Tộ. 5. Phương pháp nghiên cứu của đề tài:          Phương pháp chủ yếu khảo sát, nắm bắt tình hình thực tiễn và đúc kết rút kinh   nghiệm thực tiễn giảng dạy hàng năm để tìm ra giải pháp chung.                      Trang  2
  3. II. NỘI DUNG 1. Những nội dung lí luận có liên quan trực tiếp đến vấn đề nghiên cứu   Từ nhiều năm nay, ban giám hiệu vẫn thường xuyên tập trung chỉ đạo công tác  nâng cao thành tích học tập, làm nòng cốt cho việc nâng cao chất lượng giáo dục trong   nhà trường. Hàng năm, nhà trường đã chỉ  đạo tổ  chuyên môn xây dựng kế  hoạch  ở  từng môn học, có đặt ra chỉ tiêu phấn đấu cụ  thể, phân công giáo viên kèm cặp, giúp  đỡ những học sinh Nhà trường cũng đã hướng dẫn giáo viên những yêu cầu kiến thức, lập kế hoạch   bồi dưỡng học sinh. Phối hợp với hội cha mẹ học sinh, hội khuyến học kịp thời động  viên khen thưởng thúc đẩy phong trào. Công tác chỉ đạo của nhà trường được đề ra đã   thu được một số kết quả khả quan.  Tuy nhiên chất lượng thi học sinh chưa cao, số lượng học sinh giỏi môn Tin học   không nhiều. Quá trình tổ  chức thực hiện vẫn còn có những bất cập. Việc đầu tư  nghiên cứu tài liệu, đầu tư thời gian nâng cao kiến thức cho học sinh ở giáo viên còn ít.   Vấn đề điều tra, khảo sát, phân loại đối tượng, phát hiện năng khiếu ở học sinh chưa   làm tốt. Về  phía đội ngũ học sinh của trường thì đại đa số  là con em các gia đình làm   nghề nông, kinh tế gặp nhiều khó khăn, việc đầu tư, chăm lo cho con cái học tập tuy  có  cố   gắng song chưa  đáp  ứng kịp với  yêu  cầu  đổi  mới,  nội  dung  chương trình,   phương pháp giáo dục hiện nay. Sự phối hợp giữa gia đình ­ nhà trường tuy có được  cải thiện song chưa thực sự đi vào chiều sâu. Điều đó đã làm phiền lòng các thầy cô   giáo trực tiếp giảng dạy, kết quả học tập của các em vì thế không cao.   2. Thực trạng của vấn đề nghiên cứu 2.1. Về phía thầy giáo:  + Với suy nghĩ một chiều về tính hiệu quả không cao trong dạy – học Lập trình,   nhiều giáo viên ngại dạy môn Tin học 8. Họ không những không chuyển tải trọn vẹn   những kiến thức quan trọng mà còn làm cho học sinh thấy môn học trở nên khô khan,   khó hiểu, khó học, ...Từ  đó làm cho học sinh chán nản, không thích học “Lập trình”.  Đánh mất niềm đam mê trở thành một “lập trình viên” trong tương lai của các em.  + Việc đổi mới phương pháp dạy học, giáo viên có sử  dụng phương pháp mới,   nhưng còn máy móc, hiệu quả chưa cao, chưa có tính sáng tạo, chưa có sự  linh hoạt,   chưa kích thích tư duy sáng tạo, chưa phát huy tính tích cực của học sinh. + Một số giáo viên chưa thật sự đầu tư về công tác bồi dưỡng học sinh giỏi. 2.2 Về phía học sinh:  +Tình trạng học vẹt, học thụ động, học đối phó với kiểm tra thi cử đang là hiện  tượng phổ biến nên việc tìm kiếm thông tin là hi hữu.  + Học sinh rất sợ học lập trình, ngại học lập trình mà thường có xu hướng chạy  theo các môn học tự nhiên với suy nghĩ sau này dễ tìm việc làm thực dụng hơn. Ở lớp,   các em có thói quen nghe giảng, ghi bài, tất cả chỉ trông chờ vào những kiến thức thầy                       Trang  3
  4. truyền thụ hoặc giải trên bảng, trên máy một cách máy móc, ít hoạt động hoặc nếu có   chủ yếu viết chương trình cho có, hoặc tìm lời giải trên mạng để  đối phó mà không  hiểu được ý nghĩa của các chương trình đó như thế nào. + Mặt khác, đời sống văn hóa tinh thần ngày một nâng cao, một số nhu cầu giải   trí như  xem ti vi, chơi game . . . ngày càng nhiều làm cho một số em chưa có ý thức   học, bị lôi cuốn, sao nhãng việc học tập, lơ là trong học tập. Bảng khảo kết quả Tin học 8 cấp trường (Khi chưa thực hiện đề tài nghiên cứu) Trung  Giỏi Khá Yếu Kém TB trở lên KHỐI 8 Sĩ số  bình  SL % SL % SL % SL % SL % SL % TS 173 61 35.26 53 30.64 41 23.70 13 7.51 5 2.89 155 89.60 2 3. Về phía phụ huynh: + Phụ huy đi làm rẫy, ít có thời gian quan tâm kèm cặp con em mình. Bản thân   các em còn phải phụ giúp gia đình ngoài giờ lên lớp, không có thời gian học. + Một số gia đình thì có điều kiện kinh tế khá giả  hơn nên có điều kiện chăm  sóc con như bảo mẫu. Chúng không được trực tiếp làm việc, không được quan sát cho  nên sẽ không có kiến thức thực tế, từ đó học sinh không thể liên hệ thực tế các hoạt  động diễn ra hằng ngày vào trong các cấu trúc cơ bản của chương trình Pascal. + Nhiều cha mẹ học sinh còn cho rằng: tin học là môn học phụ, họ  chưa thấy   được những  ứng dụng trong cuộc sống mà tin học mang lại. Chính vì theo xu thế  xã  hội mà con em, học sinh của chúng ta cũng bị  “định hướng” ngay từ  khi còn học cấp   THCS nên các em không chú ý học môn Tin học ngay từ đầu.  * Nguyên nhân thực trạng: Vậy nguyên nhân của những thực trạng trên là gì? Theo tôi, có rất nhiều nguyên  nhân nhưng chủ yếu tập trung ở những nguyên nhân sau: ­ Trong thời buổi kinh tế  thị  trường, kinh tế  được coi trọng. Quan điểm của   nhiều phụ  huynh là chỉ  thích con thi khối A, B. Đây không chỉ  là quan điểm của phụ  huynh học sinh mà còn là quan điểm của nhiều người trong xã hội ngày nay.  ­ Phần lớn học sinh là con em   gia đình làm nông. Từ  đó không có nhiều thời  gian quan tâm đến việc học của con em mình. Vì hoàn cảnh gia đình như  thế   nhiều  học sinh ngoài giờ học ở lớp, các em còn phải phụ giúp gia đình nên không có thời gian  học tập, nghiên cứu, đầu tư  còn hạn chế. Ý thức vượt khó trong học tập của các em   chưa cao. ­ Bên cạnh đó, một bộ  phận không nhỏ học sinh có điều kiện gia đình khá giả  hơn thì lại lơ là việc học. Cùng với sự bùng nổ của lĩnh vực công nghệ thông tin, đặc  biệt là Internet đã tác động không nhỏ đến tâm lí tiêu cực của các em, nhiều em bỏ học  để  chơi game, nghiện game, tham gia các trang mạng xã hội như  facebook, nghiện   facebook, nhiều em còn rơi vào cảnh sống  ảo tưởng như trong game hoặc trên mạng                      Trang  4
  5. xã hội. Từ đó các em trở thành con mồi cho các đối tượng xấu lợi dụng để  truyền bá  những thông tin sai lệch, lối sống hưởng thụ sớm, ... dẫn đến việc học trở nên sa sút,   bỏ học, lôi cuốn vào các tệ nạn xã hội khác. ­ Đa phần học sinh khi được hỏi đến việc học môn tin học ở các lớp dưới như  tin học 6, 7 thì các đều rất thích thú và muốn khám phá. Đôi khi các em còn có thể tự  mày mò, tự nghiên cứu ở nhà. Nhưng khi hỏi đến bộ môn tin học khối lớp 8 thì đa số  học sinh trả lời là: khô khan, trừu tượng, khó học, khó nhớ  và không mặn mà gì mấy   đến hai từ “Lập trình”. Vì vậy việc học tập gặp rất nhiều khó khăn. ­ Đối với những môn học khác, kiến thức học sinh được giáo viên truyền đạt và   tiếp thu từ chương trình lớp 6 đến lớp 8 nên các em có được những kiến thức cơ bản   nên sẽ thuận lợi cho giáo viên trong việc lựa chọn học sinh có năng khiếu học. Còn bộ  môn Tin học (hoặc Hóa học), đặc biệt là Tin học 8 thuộc lĩnh vực “Lập trình mãi đến   lớp 8 các em mới được học Pascal với những kiến thức cơ bản và đơn giản nhất”.  ­ Bộ  môn Tin học THCS thường ít được học sinh quan tâm, yêu thích vì nó là  một môn học phụ. Nhất là Tin học lớp 8, một nội dung kiến thức cần rất nhiều tư duy   và khả năng sáng tạo trong từng cấu trúc khi lập trình. Mặt khác Tin học 8 không như  tin học 6, 7, 9 là các phần mềm ứng dụng dễ hiểu, dễ vận dụng, dễ hình dung, dễ liên   hệ thực tế trong cuộc sống. Tin học 8 thường có rất ít ứng dụng dễ nhận thấy do vậy   khó tiếp cận, khó gần gũi đối với các em học sinh. Trong nhiều năm giảng dạy, tôi   thấy việc tạo hứng thú cho học sinh yêu thích môn lập trình là một việc làm rất cần  thiết và cần đầu tư.  ­ Đặc trưng của môn Tin học 8 là kiến thức về  lập trình. Ngôn ngữ  lập trình   dường như rất xa lạ vì đây là kiến thức đầu tiên trong lập trình mà các em được học. ­ Lập trình Pascal "khó" đối với học sinh THCS  ở  chỗ: môi trường lập trình   Pascal có giao diện và các từ  khóa đều bằng tiếng Anh, các dòng thông báo hay trợ  giúp cũng vậy. Bình diện chung học sinh THCS vốn tiếng Anh không nhiều, đa số các   em còn yếu về tiếng Anh. Lấy đơn vị lớp để tính thì mỗi lớp chỉ có một vài em được   gọi là "thông thạo" tiếng Anh qua các bài học. Hầu hết số còn lại nằm trong trạng thái   "mù tịt". Đây là một khó khăn cho việc hiểu được Pascal. ­ Một vấn đề nữa cũng là rào cản đối với việc các học sinh THCS tiếp cận với   lập trình Pascal đó là: tư  duy Toán của các em dừng lại  ở  mức độ  Sách Giáo Khoa  Toán THCS do đó kỹ  năng phân tích, tổng hợp, xây dựng thuật toán cho mỗi bài toán  hay vấn đề cần lập trình chưa tốt.  Các em vẫn thụ động trong việc tiếp cận bài toán,  sắp xếp tư duy, xây dựng thuật giải. ­ Mặc dù giáo viên đã có nhiều cố  gắng trong việc đổi mới phương pháp dạy   học theo hướng làm tăng tính tích cực của người học. Nhưng thực tế việc thực hiện  theo tinh thần đổi mới phương pháp dạy học vẫn chưa đạt hiệu quả cao. Trong từng  tiết học, học sinh còn thụ động nhiều, chỉ ngồi nghe, chép là chính, không khí giờ học  “Lập trình” trôi qua nặng nề, nhàm chán. ­ Các em học sinh có năng lực với bộ môn Tin học thì thường kèm theo là giỏi bộ môn                      Trang  5
  6. Toán, Lí, Hóa do đó các em có thể chọn những môn học này để học chuyên sâu. ­ Học sinh không biết tìm ra cách học làm sao cho đạt kết quả  một cách tốt  nhất. Việc học là quan trọng ở người học. Do vậy, dù chúng ta có truyền thụ thật đầy  đủ kiến thức cho các em, vận dụng nhiều phương pháp đổi mới trong giờ học thì kết   quả các em lĩnh hội cũng không đáng là bao nhiêu.  ­> Đây là nguyên nhân cơ bản, nguyên nhân chính, nguyên nhân lớn nhất có ảnh   hưởng đến kết quả học tập của các em. Tóm lại,  với những nguyên nhân vừa mang tính khách quan, vừa mang tính chủ  quan cùng với sự tác động của xã hội đến tâm lý của người dạy và người học. Chính  vì thế  tôi đã không ngừng trăn trở  trong việc tìm tòi giải pháp để  nâng cao công tác  giảng dạy, trao đổi với bạn bè đồng nghiệp trong và ngoài nhà trường, tôi mạnh dạn  đưa ra đề tài: “Kinh nghiệm dạy lập trình Pascal ” mà bản thân tôi đúc kết được trong   nhiều năm liền khi đảm nhận công tác giảng dạy  ở môn Tin học 8. Giúp các em yêu   thích lập trình và học lập trình trong sự hứng thú. 3. Nội dung và hình thức của giải pháp: 3.1. Mục tiêu của giải pháp :   ­ Phân tích những thực trạng ngay trong cách áp dụng những phương pháp dạy  học tích cực hiện nay ở nhiều giáo viên dạy môn Tin học 8  trong trường THCS. ­ Chỉ ra những nguyên nhân cơ  bản học sinh không hứng thú học tập môn Tin   học (đặc biệt là Lập trình Pascal); việc áp dụng không hiệu quả các phương pháp dạy   học không đặc thù với bộ môn Tin học. ­ Đưa ra những giải pháp mới mang tính thiết thực nhằm tháo gỡ  những khó  khăn, vướng mắc ở giáo viên trong quá trình dạy học môn Tin học 8. ­ Phân tích những điểm mới, điểm sáng tạo vào lợi ích của giải pháp đưa ra  trong đề tài. ­ Đề xuất một số điều kiện nhằm sử dụng có hiệu quả của giải pháp mà đề tài  đưa ra.   Tóm lại, bằng những kinh nghiệm giảng dạy môn Tin học 8 trong trường   THCS, với tâm huyết nghề  nghiệp, với sự  trăn trở  trước thực trạng dạy­ học Lập   trình hiện nay, với sự  hỗ  trợ  của bạn bè, đồng nghiệp tôi đã mạnh dạn đưa ra kinh   nghiệm nhằm giúp đồng nghiệp giảng dạy một giờ  Lập trình sao cho tạo được sự  hứng thú, tích cực, chủ động, sáng tạo, ghi nhớ bài học dễ dàng và lâu hơn. Từ đó các   em biết cách Lập trình, yêu thích Lập trình, đưa môn Lập trình trở về đúng vị trí xứng   đáng của nó. 3.2. Nội dung cách thức thực hiện giải pháp: a. Chuyên đề Câu lệnh điều kiện                     Trang  6
  7. Viết chương trình nhập vào 3 số nguyên dương a, b, c khác nhau. In ra màn hình   số lớn nhất và nhỏ nhất trong 3 số trên.  Phương pháp 1: ­ Ý tưởng: + Tìm số  lớn nhất: (a>b) và (a>c) thì a lớn nhất; (b>a) và (b>c) thì b lớn nhất;  (c>a) và (c>b) thì c lớn nhất; + Tìm số nhỏ  nhất: (a
  8.  Phương pháp 3: ­ Ý tưởng: + So sánh giá trị a và b, nếu a>b thì đổi giá trị a và b. {Sau khi đổi giá trị thì sẽ cho  kết quả a c thì đổi giá trị b và c. {Sau khi đổi giá trị thì sẽ cho  kết quả a, b b hay b>a }. + Lại so sánh giá trị a và b, nếu a>b thì đổi giá trị a và b. {Sau khi đổi giá trị thì sẽ  cho kết quả a c Then begin Tam:=b; b:=c; c:=tam end;  If a>b Then begin Tam:=a; a:=b; b:=tam end;  Write('So nho la:’,a,’ so lon la’,c); Readln;  End. => Nhận xét: Trong 3 phương pháp trên thì mỗi phương pháp đều có một  ưu điểm và hạn chế riêng: ­ Phương pháp 1: Giúp học sinh làm quen với câu lệnh điều kiện dạng đủ  lồng  nhau và điều kiện ghép ((a>b) and (a>c)) trong câu lệnh điều kiện thông qua phép toán  And. ­ Phương pháp 2: Giúp học sinh làm quen với lệnh gán, sử dụng biến trung gian   Max, Min và câu lệnh ghép (Begin Max:=a; Min:=b; End) trong câu lệnh điều kiện. ­ Phương pháp 3: Giúp học sinh làm quen với câu lệnh điều kiện dạng thiếu và   ôn  lại  kiến  thức   sắp  xếp  giá   trị   hai  biến   theo  thứ   tự   tăng   hoặc   giảm   dần   begin   Tam:=a; a:=b; b:=tam end; b. Chuyên đề Câu lệnh lặp Bài toán 1: Số nguyên tố là số tự nhiên lớn hơn 1, chỉ có hai ước là 1 và  chính nó. Yêu cầu: Nhập vào số nguyên dương N. Kiểm tra xem N có phải là số nguyên tố  hay không, thông báo kết quả sau khi kiểm tra.  Phương pháp 1: ­ Ý tưởng: + Cho biến i chạy từ  2  đến n­1 {Ta xét trường hợp n có chia hết cho i hay   không}, nếu n chia hết cho i thì ta tăng biến đếm lên một đơn vị  {ban đầu biến   đếm nhận giá trị bằng 0}.                     Trang  8
  9. + Kiểm tra biến đếm, nếu biến đếm nhận giá trị  bằng không {tức n không chia  hết cho số nào trong khoảng từ 2 đến n­1} vậy n là số nguyên tố, ngược lại biến  đếm nhận giá trị  lớn hơn 0{tức n chia hết cho cho một hoặc nhiều giá trị  trong   khoảng [2..n­1]} vậy n không phải là số nguyên tố. ­ Chương trình: Program So_ND; Var n,i,dem:Integer; Begin Write('Nhap gia tri N: ');Readln(n); If n
  10.  Phương pháp 2: ­ Bổ sung kiến thức: + N là số Nguyên tố khi n>=2 và n không chia hết cho số nào có giá trị trong  khoảng từ 2 đến n – 1. Tuy nhiên trên thực tế thì chỉ cần n không chia hết  cho số nào  có giá trị trong khoản từ 2 đến số nguyên gần với căn n nhất nhưng nhỏ hơn n  {Trunc(Sqrt(n))}. + Giả sử A và B là hai giá trị kiểu Boolean. Kết quả của các phép toán được thể  hiện qua bảng dưới đây:  ­ Ý tưởng: + Giống như phương pháp 1 tuy nhiên ở đây chúng ta không đếm mà sử dụng  phương pháp đánh dấu của kiểu boolean. Tức ta xét trường hợp n có chia hết cho i hay  không, nếu n chia hết cho i thì ta đánh dấu là False {Giả sử biến KT có biểu dữ liệu là  Boolean thì nếu n chia hết cho i thì KT:=False, ban đầu ta gán KT:=True}. + Kiểm tra biến KT, nếu KT là True {tức biến KT nhận tất cả là True} thì n là  số nguyên tố, ngược lại n không phải số nguyên tố {tức biến KT có nhận lớn hơn  hoặc bằng một giá trị False}. ­ Chương trình:  Program KT_SONT; Var i,n:Integer; Kt:Boolean; Begin Write('Nhap gia tri N: ');Readln(n);  Kt:=True; If n  Nhận xét: ­ Phương pháp 1: Giúp cho học sinh có cái nhìn tổng quan hơn khi xác định n có  phải là số nguyên tố hay không thông qua phương thức đếm số lần n có chia hết cho  giá trị nào trong khoảng từ [2..n­1] hay không, theo định nghĩa thì số nguyên tố là số chỉ  chia hết cho 1 và chính nó {tức nếu N là số nguyên tố chỉ khi n chia hết cho 1 và n}.  Vậy nếu n còn chia hết cho số nào trong khoảng [2..n­1] thì n không phải nguyên tố.                     Trang  10
  11. ­ Phương pháp 2: Phương giáp này giúp học sinh tìm hiểu được nhiều kiến thức  hơn trên nền kiến thức của phương pháp 1. Khi cho i chạy từ 2 đến trunc(sqrt(n)) thì  số lần thực hiện vòng lặp được giảm đi một nữa, sẽ tiết kiệm được thời gian khi  chạy chương trình; mặt khác giúp học sinh ôn lại kiến thức lấy kết quả phép so sánh  của kiểu dữ liệu Boolean, một kiểu dữ liệu mà chúng ta cũng rất hay sử dụng trong  các bài tạo vòng lặp. Bài toán 2: Viết chương trình nhập vào 2 số nguyên dương a, b khác nhau. Tìm ước chung lớn nhất và bội chung nhỏ nhất của 2 số trên.  Phương pháp 1: ­  Ý tưởng: + Kiểm tra hai giá trị a, b. Nếu a>b thì a:=a­b ngược lại thì b:=b­a, tiếp tục  kiểm tra giá trị a, b và trừ cho đến khi nào a=b thì kết thúc. Lúc đó: USLN=a. + BCNN của hai số a, b bằng phần nguyên của a nhân b chia cho USLN(a,b).  {BCNN(a,b) = a*b Div UCLL(a,b)}. ­ Chương trình: Program UCLN_BCNN; Var a,b,p,du:Integer;  Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b);  P:=a*b; Repeat If a>b Then a:=a­b Else b:=b­a;  Until a = b; Writeln('UCLN cua a va b la: ',a,' BCNN la: ',p Div a); Readln; End. • Lưu ý: Sau khi test chương trình xong giáo viên cho học sinh test cặp giá trị a,  b bằng nhau. Yêu cầu học sinh nhận xét, nêu thuật toán và viết lại chương trình trên  với điều kiện a, b là hai số nguyên.  Phương pháp 2: ­ Ý tưởng: + Nếu a chia b có phần dư bằng 0 thì b là UCLN của a và b. Từ khái niệm này  ta xây dựng thuật toán như sau: du:= a mod b, a:=b; b:=du, chương trình kết thúc khi  b=0 và UCLN là a. + Viết ra UCLN, BCNN ­ Chương trình:  Program UCLN_BCNN; Var a,b,p,du:Integer;  Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b);                      Trang  11
  12. P:=a*b; While b0 Do Begin Du:=a mod b; a:=b:b:=du; Writeln('UCLN la: ',a,' BCNN la: ',P Div a);  Readln; End.  Phương pháp 3: ­  Ý tưởng: + Ta cho biến i chạy từ 1 đến a, nếu thỏa mãn đồng thời 2 điều kiện (a mod i  =0) và (b mod i =0) thì i là UCLN của a và b. + Viết ra UCLN, BCNN Chương trình:  Program UCLN_BCNN; Var a,b,p,d:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b);  P:=a*b; For i:=1 To a Do if (a mod i=0) and (b mod i=0) then d:=i  Writeln('UCLN la: ',d, ‘BCNN la: ',p Div d); Readln;  End.  Phương pháp 4: ­ Ý tưởng: + Ta cho biến i chạy downto từ a đến 1, nếu thỏa mãn đồng thời 2 điều kiện (a  mod i =0) và (b mod i =0) thì i là UCLN của a và b đồng thời kết thúc việc tìm kiếm  {kết thúc vòng lặp}. + Viết ra UCLN, BCNN ­ Bổ sung kiến thức: Lệnh break + Cú pháp: Break + Hoạt động: Lệnh break hoạt động khi được đặt trong thân các vòng lặp for,  while, repeat. Khi gặp lệnh break thì máy sẽ thoát khỏi chu trình của vòng lặp, nếu có  nhiều vòng lặp lồng nhau sẽ thoát vòng lặp trong nhất chứa lệnh break; ­ Chương trình:  Program UCLN_BNNN; Var a,b,p,d:Integer; Begin Write('Nhap gia tri a, b tuong uong : ');Readln(a, b);                      Trang  12
  13. P:=a*b; For i:=a Downto 1 Do if (a mod i=0) and (b mod i=0) then d:=i;  Writeln('UCLN la: ',d, ‘BCNN la: ',p Div d); Readln;  End. => Nhận xét: ­ Phương pháp 1, 2: Nếu chúng ta cho học thực hiện vòng While …Do hoặc   Repeat … Until để  viết chương trình cho hai phương pháp trên thì cơ  bản thuật toán  không thay đổi chỉ khác nhau là sử dụng phương pháp chia liên tiếp hay trừ  liên tiếp.   Tuy nhiên  ở  đây chúng ta sử  dụng While …Do cho phương pháp 1 và Repeat …Until  cho phương pháp 2 với mục đích giúp các em tìm hiểu thêm sự khác nhau trong điều   kiện lặp và kết thúc hai câu lệnh trên, từ đó yêu cầu các em chỉnh sửa câu lệnh, thuật   toán chia, trừ liên tiếp ngược lại trong hai phương pháp để khắc sâu kiến thức hơn. ­ Phương pháp 3, 4: Phương pháp này giúp các em ôn lại 2 nội dung kiến thức,   một là điều kiện ghép trong câu lệnh điều kiện, hai là vòng lặp với số lần biết trước.   Khi thực hiện vòng lặp dạng tiến For i:=1 To a thì có thể  có nhiều giá trị  thỏa mãn  nhưng chương trình sẽ nhận được giá trị  cuối cùng khi kết thúc lặp, giá trị  này là giá   trị ta cần tìm trong bài toán. Trong phương pháp 4 các em còn tìm hiểu thêm được kiến  thức mới về câu lệnh Break. Lệnh này thường được áp dụng để  tìm giá trị  nhỏ  nhất,   lớn nhất thỏa mãn các điều kiện nào đó. Ví dụ  Viết chương trình tìm số  nguyên   dương T nhỏ nhất có N chữ số, biết rằng khi chia T cho 19 thì dư 13 và khi chia T cho   31 thì dư 12. c. Chuyên đề mảng một chiều. Dãy Fibonaci là dãy 1, 1, 2, 3, 5, 8, 13, 21, ... dãy này được sinh ra bởi công thức   đệ qui sau: F1 =1, F2 =1, Fk=Fk­1+Fk­2 với 2
  14. ­ Chương trình:  Program Fibonaci; Var a,b: array[1..100] of Longint;  i,j,t,h,n:Longint; Begin Write('Nhap gia tri N:');Readln(n);  a[1]:=1;a[2]:=1; i:=2; While a[i]
  15.  Phương pháp 2: ­ Ý tưởng: + Triển khai N thành dãy Fibonaci và lưu vào mảng A. + Thực hiện vòng lặp Downto cho h chạy từ i đến 1, kiểm tra nếu ah ≤n thì viết  ra ah , n:=n­ah , chương trình kết thúc khi n=0. ­ Chương trình:  Program Fibonaci; Var a,b: array[1..100] of Longint;  i,j,t,h,n:Longint; Begin Write('Nhap gia tri N:');Readln(n);  a[1]:=1;a[2]:=1; i:=2; While a[i]
  16. End. => Nhận xét: ­ Phương pháp 1 và 2 khác nhau ở chỗ phương pháp 1 kiểm tra các phần tử  trong a nếu nhỏ hơn hoặc bằng n thì chuyển phần tử đó vào mảng b, khi nào tổng của  mảng b bằng n thì dừng, phương pháp 2 kiểm tra giá trị n, nếu n lớn hơn hoặc bằng  phần tử trong mảng thì in ra phần tử trên và lấy lại giá trị mới cho n. ­ Nhìn chung phương pháp 2 học sinh dễ hiểu thuật toán hơn tuy nhiên ở  phương pháp 1 lại giúp các em bổ sung thêm kiến thức về việc sử dụng nhiều biến  mảng trong một chương trình. • Lưu ý chung: Trong các chuyên đề nêu trên, đối với các bài toán giải theo  nhiều phương pháp, sau khi học sinh giải xong giáo viên cần cho học sinh nhận xét,  phân tích mặt thuận lợi, khó khăn của mỗi phương pháp. Vì đây là điểm cốt lõi nhất  để học sinh có thể so sánh điểm mạnh, yếu trong mỗi phương pháp giải từ đó khắc  sâu được nội dung kiến thức và lựa chọn, đưa ra được phương pháp giải tối ưu nhất  cho mình. Trong nội dung của đề  tài tôi chỉ  đưa ra một số  bài toán để  chúng ta cùng   tham khảo, tôi quan niệm rằng với ngôn ngữ lập pascal thì mọi bài toán đều có   thể được giải (viết chương trình) bằng nhiều phương pháp khác nhau.   4. Kết quả khảo nghiệm:             Trên đây là một số biện pháp, hình thức giảng dạyg học sinh mà tôi đã áp dụng   trong 2 năm trở lại đây. Sau đây là kết quả mà học sinh đã đạt được: Trung  KHỐI 8 Giỏi Khá Yếu Kém TB trở lên Sĩ số  bình  SL % SL % SL % SL % SL % SL % TS 173 74 42.77 73 42.20 24 13.87 0 0.00 2 1.16 171 98.84 ( Học sinh có học lực “Kém” do học sinh vi pham nội quy. Vắng quá số  buổi học. Có  kiểm bản trong trong hồ sơ) Kết quả  này cho thấy, số học sinh đạt chưa nhiều nhưng đạt chất lượng cao và  duy trì được chất lượng học sinh giỏi hàng năm. Điều này đã phản ánh được tác dụng   của những phương pháp, hình thức bồi dưỡng học sinh nói trên.                     Trang  16
  17. III. KẾT LUẬN VÀ KIẾN NGHỊ 1. Những kết luận đánh  giá cơ bản nhất về sáng kiến                                 Tóm lại, như nội dung mà đề  tài đã nêu, công tác chỉ đạo giảng dạy học sinh là   một nhiệm vụ trọng tâm  ở  nhà trường phổ  thông nói chung, trường THCS nói riêng.   Đó là công việc khó khăn đòi hỏi sự nỗ lực chỉ đạo của ban giám hiệu, tổ chuyên môn,  trăn trở  của mỗi thầy cô giáo. Từ  việc nghiên cứu nội dung, chương trình, các kiến  thức cần đi sâu cho học sinh, các kỹ năng cần rèn luyện cho các em; việc cải tiến, đổi   mới phương pháp dạy học. Giảng dạy học sinh giỏi phải gắn liền với việc nâng cao   chất lượng. Phải quán triệt được phương châm: Dạy học theo đối tượng, trình độ tiếp  thu ở học sinh. Không nên đưa những vấn đề quá khó đối với học sinh. Giáo viên cũng   như  các nhà quản lý phải kiên trì, bền bỉ  xây dựng bài học một cách hệ  thống, đồng   bộ  từ  nhiều khâu, đặt ra nhiều giải pháp thực hiện theo điều kiện cơ  sở  vật chất và   hoàn cảnh cụ thể ở từng nhà trường, từng địa phương. Tránh suy nghĩ chủ quan, nóng   vội, phải tiến hành từ  thấp đến cao, có kế  hoạch. Thường xuyên chăm lo xây dựng   đội ngũ giáo viên có tay nghề  vững, trách nhiệm cao, gần gũi thương yêu học sinh.   Chú trọng công tác đúc rút sáng kiến kinh nghiệm, đổi mới phương pháp dạy học, tạo  không khí thi đua "dạy tốt ­ học tốt" thường xuyên trong nhà trường, củng cố  phong  trào khuyến học, tạo cơ sở vật chất tốt cho nhà trường.  Là người thực hiện đề  tài, tôi thấy rằng các cấp cần phải tập trung nhiều vào   khâu bồi dưỡng giáo viên cả  về  tư  tưởng, chính trị  và nghiệp vụ. Tránh chạy đua   thành tích, cần tạo được cái nền vững chắc về chất lượng học sinh, đánh giá, nắm rõ  thực trạng chất lượng, tháo gỡ  những khó khăn ách tắc. Cần đẩy mạnh xã hội hoá   giáo dục, xây dựng truyền thống học tập rộng khắp  ở mỗi địa phương, đẩy mạnh và   cải tiến tiêu chí đánh giá thi đua khen thưởng, đầu tư kinh phí, động viên, khích lệ sự  cố gắng ở giáo viên, học sinh một cách hợp lý. Đầu tư  cho công tác bồi dưỡng học sinh giỏi là tạo nền móng cho chiến lược   nhân tài, là đầu tư  cho chiến lược con người của quê hương, đất nước phục vụ  sự  nghiệp công nghiệp hóa, hiện đại hoá đất nước. Vì vậy cần được sự tập trung chỉ đạo  nhiều hơn nữa của các nhà trường và các cấp quản lý giáo dục 2. Đề xuất, kiến nghị   Giảng dạy học sinh là một công tác trọng tâm  ở  các nhà trường phổ  thông.   Nhiệm vụ của mỗi giáo viên là phải nâng cao được chất lượng giảng dạy, bồi dưỡng  học sinh giỏi, để phát hiện và bồi dưỡng đạt kết quả tốt người giáo viên là yếu tố cơ  bản. Giáo viên thật sự phải có năng lực, năng khiếu sư phạm, đồng thời phải có tâm  huyết với nghề  nghiệp, biết tôn trọng tài năng. Chất lượng học sinh giỏi không chỉ  thể hiện đánh giá năng lực của học sinh mà còn thể  hiện năng lực của mỗi giáo viên                       Trang  17
  18. nói riêng và chất lượng giáo dục của nhà trường nói chung. Song qua việc nghiên cứu   đề tài này cho phép tôi có một vài đề nghị sau: 2.1. V   ề phía giáo viên :  ­ Không được ép buộc học sinh, phải để học sinh yêu thích về môn đó.            ­ Những giáo viên được phân công giảng dạy phải có kế hoạch. ­ Phải thật sự nhiệt tình say mê, tận tụy với học sinh .   ­ Luôn nỗ  lực, cố  gắng nghiên cứu, tìm tòi, học hỏi để  xây dựng những tiết   dạy­học Tin học một cách hiệu quả. 2.2.   Về     phía học sinh:  ­ Đầy đủ dụng cụ học tập, sách vở. ­ Sau mỗi tiết học, yêu cầu học sinh về  nhà rèn luyện các bài tập đó thường  xuyên để  khắc sâu kiến thức. Vì đặc thù bộ  môn là thực hành trên máy nên học sinh  cần rèn luyện các kĩ năng sử dụng thành thạo phần mềm Pascal. ­ Luôn có sự chủ động, tích cực và có những kĩ năng cơ bản khi học bộ môn lập   trình. 2.3.   Đối với tổ chuyên môn:  ­ Tổ  chức thao giảng theo chuyên đề  hàng tháng, đặc biệt chú ý các tiết dạy khó   để cùng trao đổi, thống nhất phương pháp dạy phù hợp nhất. ­Thường xuyên tổ chức các buổi ngoại khóa bộ môn, tổ chức các cuộc thi học sinh   môn Tin học cấp trường cho học sinh các khối, để  học sinh có thể  thể  hiện năng   khiếu của mình.  ­ Việc tổ chức các cuộc thi cấp trường còn giúp cho học sinh thấy được tầm quan   trọng của bộ môn tin học, qua đó thu hút học sinh quan tâm đến bộ môn này, đồng thời  tạo hứng thú cho học sinh tìm hiểu và thích thú khi học tin học. 2.4.   Đối với nhà trường:  ­ Phải quan tâm nhiều hơn công tác này, động viên kịp thời những giáo viên trực   tiếp dạy bồi dưỡng cả về vật chất lẫn tinh thần . ­ Nên bổ sung thêm máy  vi tính để tạo điều kiện cho học sinh trong quá trình thực  hành trên phòng máy.              Trên đây là sáng kiến kinh nghiệm của tôi về  “ Kinh nghiệm dạy lập trình  Pascal” được thực hiện tại trường THCS Nguyễn Trường Tộ. Vì điều kiện thời gian   nghiên cứu có hạn và trình độ năng lực hạn chế, đề tài của tôi chắc chắn sẽ còn nhiều   thiếu sót. Do vậy tôi rất mong được sự góp ý của các đồng nghiệp và cán bộ phụ trách  chuyên môn để cho đề tài hoàn chỉnh hơn.  Tôi xin chân thành cảm ơn!                                                              Thống Nhất, ngày 08 tháng 11 năm 2018                                Người viết                     Trang  18
  19.                            La Ngọc Tụ                     Trang  19
  20. TÀI LIỆU THAM KHẢO ­ Sách giáo khoa TIN HỌC DÀNH CHO TRUNG HỌC CƠ SỞ QUYỂN 3 ­ Sách giáo viên TIN HỌC DÀNH CHO TRUNG HỌC CƠ SỞ QUYỂN 3 ­ Sách bài tập TIN HỌC DÀNH CHO TRUNG HỌC CƠ SỞ QUYỂN 3 ­ Ngồn ngữ lập trình Pascal – Quách Tuấn Ngọc ­ Bài tập Ngôn ngữ lập trình Pascal – Quách Tuấn Ngọc. ­ Lý Thuyết và Bài Tập Pascal Dành cho học sinh phổ thông THCS (Cấp II) và  Dạy Nghề ­ NXBTK  ­ Giáo trình thuật toán và kỹ thuật lập trình Pascal ­  NXB HÀ NỘI. ­ Giáo trình LẬP TRÌNH PASCAL – NXB GIÁO DỤC ­ Giáo trình Lý thuyết và bài tập Pascal (Tập 2): Phần 1 – Khoa CNTT – ĐHSP  Hà Nội ­ Giáo trình Lý thuyết và bài tập Pascal (Tập 2): Phần 2 – Khoa CNTT – ĐHSP  Hà Nội ­ Một số tài liệu khác…                     Trang  20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
7=>1