ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON

Giáo viên hướng dẫn: Đào Tố Mai. Sinh viên thực hiện: Đỗ Trung Thành.

PHẦN I

MỞ ĐẦU
I. Lý do chọn đề tài 1. Trong bối cảnh Công nghệ thông tin ngày càng phát triển, việc sử dụng rộng rãi máy tính không còn chỉ bó hẹp trong viện nghiên cứu, các trường đại học, các trung tâm máy tính mà còn mở rộng ra mọi cơ quan, xí nghiệp và nhà máy. Song song với quá trình trên, việc giảng dạy Tin học trong các trường đại học, trung học và phổ thông cũng được đẩy mạnh đi đôi với việc tăng cường trang bị máy vi tính. Chính vì vậy, đối với mỗi giáo viên giảng dạy môn Tin học ở các trường phổ thông, việc tìm hiểu, nghiên cứu các vấn đề về Tin học, cùng với việc tìm các biện pháp giảng dạy Tin học trong nhà trường phổ thông là một công việc cần phải làm thường xuyên, nhằm đáp ứng với sự đòi hỏi ngày càng cao của xã hội. 2. Trong nghiệp vụ của người thầy giáo có hai vấn đề quan trọng: thứ nhất là thực tiễn về tiềm năng - những kiến thức lý thuyết mà họ được học rất cơ bản. Thứ hai là thực tiễn về nghiệp vụ - thầy giáo phải biết cách truyền thụ kiến thức phù hợp với trình độ của học sinh. Trong đó, thực tiễn thứ hai là điều quyết định trong nghiệp vụ của thầy giáo, nó đánh giá chất lượng giảng dạy của thầy giáo. Hai thực tiễn trên vừa mâu thuẫn với nhau, lại vừa thống nhất với nhau. Thầy giáo không thể mang hết các kiến thức lý thuyết cao xa và trừu tượng dạy cho học sinh, nhưng cũng không thể dạy tốt cho học sinh nếu thầy giáo hiểu biết quá ít. 2.1. Trong bối cảnh toàn ngành Giáo dục và Đào tạo đang nỗ lực đổi mới phương pháp dạy học theo hướng phát huy tính tích cực chủ động của học sinh trong hoạt động học tập. Điều 24.2 của Luật giáo dục đã nêu rõ : “Phương pháp giáo dục phổ thông phải phát huy tính tích cực, tự giác, chủ động, sáng tạo của học sinh, phù hợp với đặc điểm của từng lớp học, môn học; bồi dưỡng phương pháp tự học, rèn luyện kỹ năng vận dụng kiến thức vào thực tiễn, tác động đến tình cảm, đem lại niềm vui, hứng thú học tập cho học sinh”. Như vậy, chúng ta có thể thấy định hướng đổi mới phương pháp dạy học đã được khẳng định, không còn là vấn đề tranh luận. Cốt lõi của việc đổi mới phương pháp dạy học ở trường phổ thông là giúp học sinh hướng tới việc học tập chủ động, chống lại thói quen học tập thụ động. 2.2. Đổi mới phương pháp dạy học theo hướng tích cực hóa hoạt động của học sinh là một quá trình lâu dài; không thể ngày một ngày hai mà đông đảo giáo viên từ bỏ được kiểu dạy học truyền thụ kiến thức, tiếp thu thụ động đã quen thuộc từ lâu. việc phát triển các phương pháp tích cực đòi hỏi một số điều kiện, trong đó quan trọng nhất là bản thân mỗi giáo viên cần có một sự nỗ lực để tìm tòi, sáng tạo trong công tác giảng dạy của mình. 2.3. Đổi mới phương pháp dạy học là một vấn đề hết sức quan trọng, nhất là với bộ môn Tin học hiện đang được đưa vào giảng dạy ở các trường phổ thông. Là một giáo viên giảng dạy bộ môn này, theo em không phải cứ tìm được nhiều bài toán khó, bài toán hay để giảng dạy cho học sinh. Mà vấn đề đặt ra là chúng ta cần phải tích cực tìm tòi, sáng tạo trong việc đưa ra những bài toán đó để giúp cho học sinh có sự hứng thú, tìm tòi sáng tạo trong quá trình giài quyết học tập, từ đó biết vận dụng linh hoạt trong các tình huống cụ thể ngoài thực tế.

Trang 5

ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON
Giáo viên hướng dẫn: Đào Tố Mai. Sinh viên thực hiện: Đỗ Trung Thành.

3. Trong việc giảng dạy cho học sinh, ngoài việc giúp học sinh lĩnh hội những kiến thức cơ bản. Thầy giáo còn phải biết kích thích tính tích cực, sự sáng tạo say mê học hỏi của học sinh trong việc học tập của các em. Bởi vì, việc học tập tự giác, tích cực, chủ động và sáng tạo đòi hỏi học sinh phải có ý thức về những mục tiêu đặt ra và tạo được động lực bên trong thúc đẩy bản thân họ hoạt động để đạt các mục tiêu đó. Điều này được thực hiện trong dạy học không chỉ đơn giản bằng việc nêu rõ mục tiêu mà quan trọng hơn còn do gợi động cơ. 4. Turbo Pascal là ngôn ngữ lập trình có cấu trúc, nó được dùng phổ biến ở nước ta hiện nay trong công tác giảng dạy, lập trình tính toán, đồ họa. Turbo Pascal được dùng trong chương trình giảng dạy Tin học ở hầu hết các trường đại học, cao đẳng, trung học phổ thông. 4.1. Trong các vấn đề về Tin học được đưa vào giảng dạy ở chương trình bậc học phổ thông hiện nay. Khi nói đến vấn đề dạy học lập trình cho học sinh, vấn đề dạy học cho học sinh về chương trình con là một trong những vấn đề chiếm vai trò quan trọng. Bởi vì, sử dụng chương trình con để hợp lý hóa, tiết kiệm công sức lập trình. Đồng thời, chương trình con có thể giúp cho người lập trình dễ sửa chữa, dễ kiểm tra. Vấn đề đặt ra là: gợi động cơ hoạt động cho học sinh khi giảng dạy về chương trình con như thế nào? Đó chính là vấn đề mà bản thân em hết sức quan tâm. 4.2. Để thực hiện được điều đó, theo em chúng ta cần phải tìm tòi, nghiên cứu tìm ra những bài toán phù hợp, kích thích được sự độc lập, tích cực của học sinh trong học tập. Trên cơ sở đó, học sinh có thể tự mình tìm ra được những ý tưởng sáng tạo vận dụng thiết thực vào cuộc sống thực tế khi nhu cầu nảy sinh, khi đó các em có thể tự mình hoàn thành được ý tưởng đó. 4.3. Trên cơ sở những gì mà học sinh được học tập về môn lập trình Pascal, học sinh có thể sử dụng một cách thành thạo các ngôn ngữ khác để hoàn thành tốt hơn những ứng dụng trong thực tế. Bởi vì, ngôn ngữ Pascal có tính cấu trúc mạnh, có cơ sở và nó đòi hỏi chương trình phải chặt chẽ, logic. Đặc biệt, khi học về chương trình con, học sinh có thể hiểu một cách sâu sắc hơn về ngôn ngữ lập trình, nhìn nhận vấn đề một cách sáng sủa hơn, chặt chẽ hơn và nhất là chương trình con có thể giúp cho các em hoàn thành những chương trình lớn hơn vượt ra những bài toán bình thường mà nội bộ môn học đòi hỏi. Chính vì vậy, việc gợi động cơ cho học sinh trong việc dạy học chương trình con là một công việc quan trọng, đòi hỏi mỗi giáo viên cần phải nỗ lực tìm tòi, sáng tạo giúp cho học sinh nhìn nhận vấn đề một cách tích cực hơn, sáng tạo hơn và nhất là giúp cho các em có thể yêu thích nhiều hơn nữa ngôn ngữ lập trình Pascal. Với tất cả những lý do nêu trên, em quyết định chọn đề tài này. II. Định hướng nghiên cứu 1. Mục đích nghiên cứu Tạo động cơ cho học sinh ý thức về ý nghĩa của các hoạt động khi sử dụng chương trình con trong công việc lập trình. Từ đó, học sinh có thể liên hệ , vận dụng sáng tạo vào giải quyết các bài toán lập trình và các tình huống thực tế. 2. Nhiệm vụ nghiên cứu Qua việc nghiên cứu các vấn đề về chương trình con của ngôn ngữ lập trình Pascal, các tài liệu về phương pháp giảng dạy. Từ đó, đưa ra các biện pháp có thể gợi động cơ hoạt động cho học sinh thông qua các ví dụ cụ thể về chương trình con.
Trang 6

ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON
Giáo viên hướng dẫn: Đào Tố Mai. Sinh viên thực hiện: Đỗ Trung Thành.

III. Phương pháp nghiên cứu 1. Nghiên cứu lý luận Trong nghiên cứu lý luận người ta dựa vào những tài liệu sẵn có, những lý thuyết đã được khẳng định, những thành tựu của nhân loại trên những lĩnh vực khác nhau như Tâm lý học, Giáo dục học, Tin học, ... để xem xét vấn đề, tìm ra giải pháp hợp lý có sức thuyết phục vận dụng vào PPDH Tin học. Người ta cũng nghiên cứu cả những kết quả của bản thân chuyên ngành PPDH Tin học để kế thừa những cái hay, phê phán và gạt bỏ những cái dở, bổ xung và hoàn chỉnh những nhận thức đã đạt được. Những hình thức thường dùng trong nghiên cứu lý luận là: - Phân tích tài liệu lý luận : Giúp chúng ta chọn đề tài, đề ra mục đích nghiên cứu, hình thành giả thuyết khoa học, xác định tư tưởng chủ đạo và đánh giá sự kiện. Khi nghiên cứu lý luận, ta cần phân tích, tổng hợp, so sánh, khái quát để tìm ra ý mới. Cái mới ở đây có thể là một lý thuyết hoàn toàn mới, nhưng cũng có thể là một cái mới đan kết với những cái cũ, có thể là một sự tổng hợp những nét riêng lẻ đã chứa trong cái cũ, nêu bật cái bản chất từ những cái cũ, bổ xung, cụ thể hóa lý thuyết cũ. - So sánh quốc tế : Giúp chúng ta lựa chọn, xây dựng phương án tác động giáo dục trên cơ sở đánh giá, so sánh tài liệu, cách làm của những nước khác nhau. - Phân tích tiên nhiệm : Thường dựa vào những yếu tố lịch sử, những cách tiếp cận khác nhau của một lý thuyết, những cách định nghĩa khác nhau của một khái niệm, ... để dự kiến những quan niệm có thể có của học sinh về một kiến thức Tin học. Nó cũng được dùng để kiểm nghiệm một hiện tượng, một quá trình có thỏa mãn những tiêu chuẩn, yêu cầu, điều kiện đặt ra hay không. 2. Quan sát - điều tra Quan sát điều tra được sử dụng rộng rãi trong nghiên cứu giáo dục. Đó là phương pháp tri giác có mục đích một hiện tượng giáo dục nào đó để thu lượm những số liệu, tài liệu, sự kiện cụ thể đặc trưng cho quá trình diễn biến của hiện tượng mà ta dự định khảo sát. Chúng ta quan tâm đến chất lượng của các mối quan hệ, của các hoạt động, của tình huống. Điều tra giống quan sát ở chỗ cùng dựa vào và khai thác những hiện tượng có sẵn, không chủ động gây nên những tác động sư phạm, nhưng quan sát thiên về xuất phát từ những dấu hiệu bên ngoài, còn điều tra có thể khai thác những thông tin sâu kín từ bên trong, chẳng hạn cho làm những bài kiểm tra rồi đánh giá. Quan sát - điều tra giúp chúng ta theo dõi hiện tượng giáo dục theo trình tự thời gian, phát hiện những biến đổi số lượng, chất lượng gây ra do tác động giáo dục. Nó giúp ta thấy được những vấn đề thời sự cấp bách đòi hỏi phải nghiên cứu hoặc góp phần giải quyết nhiệm vụ nghiên cứu. Môi trường tự nhiên là nguồn cung cấp dữ liệu trực tiếp cho ta. Người nghiên cứu đến trực tiếp một nơi nào đó mà họ quan tâm để quan sát và thu thập dữ liệu, bởi vì các hoạt động chỉ có thể hiểu tốt nhất là trong môi trường tự nhiên, trong ngữ cảnh mà chúng xuất hiện. Quan sát - điều tra thực tiễn sư phạm, chẳng hạn thăm lớp dự giờ sẽ giúp chúng ta nhận thức được thực trạng dạy học Tin, phát hiện được những vấn đề thời sự cấp bách cần nghiên cứu, giúp ta thu được những tài liệu sinh động và bổ ích cho nhiệm vụ nghiên cứu.

Trang 7

khoa học.. . Trong khi quan sát . kinh nghiệm thành công và kinh nghiệm lặp lại nhiều lần. tại sao họ lại làm như vậy?.. được lĩnh hội.điều tra diễn biến thực của những hiện tượng sư phạm. số lượng câu hỏi. các sổ ghi chép. . luận điểm. Chỉ khi đó tổng kết kinh nghiệm mới thật sự là một phương pháp nghiên cứu khoa học hữu hiệu. cử chỉ.. công khai. những kinh nghiệm vụn vặt.. sự tập trung chú ý thể hiện qua hướng nhìn. gián đoạn.điều tra liên tục. những kết luận về lý luận giáo dục góp phần bổ xung. thông Tin. gián tiếp. Theo mối quan hệ giữa đối tượng quan sát . 3. làm cho lý luận giáo dục được hoàn thiện hơn. số lượng học sinh giơ tay xin phát biểu. kém tích cực). Trong quá trình nghiên cứu tổng kết kinh nghiệm. những giải pháp. . Tổng kết kinh nghiệm Tổng kết kinh nghiệm thực chất là đánh giá và khái quát hóa những kinh nghiệm đã thu thập được trong hoạt động thực tiễn. Những bài học của sự thành công cần được đề cập với tư cách là cứ liệu đối chiếu. có nội dung cụ thể (chẳng hạn sự gây động cơ và hướng đích của giáo viên. kiểm chứng từ quá trình hoạt động thực tiễn sinh động.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. ) và có tiêu chuẩn đánh giá.. chất lượng cao hơn trong điều kiện đổi mới giáo dục của đất nước hiện nay. Những bài học kinh nghiệm.điều tra cần có mục đích cụ thể (chẳng hạn để thấy được hoạt động tích cực của học sinh trong giờ học). Kinh nghiệm giáo dục ở những đơn vị tiên tiến có thể được coi là dạng lý luận giáo dục đã được kiểm chứng trong thực tiễn. đo lường các kết quả quan sát cụ thể (chẳng hạn một giờ như thế nào được đánh giá là học sinh hoạt động rất tích cực. biện pháp về hướng đi và cách làm mới có giá trị.điều tra trực tiếp.. trong những tình huống. lý luận giáo dục đã đi vào cuộc sống. kín đáo. Các loại dữ liệu thu thập được trong nghiên cứu bao gồm văn bản ghi chép các cuộc phỏng vấn. có khi người ta tình cờ phát hiện ra những sự kiện. băng hình. giúp ta lý giải được vì sao họ lại nghĩ như thế. Bài học kinh nghiệm là sự cụ thể hóa một cách sáng tạo tư tưởng. đi sâu vào bản chất của sự vật. Chúng cần được xem xét một cách khách quan. điều kiện cụ thể của môi trường giáo dục.điều tra với người nghiên cứu thì có các dạng quan sát . có khi người ta khám phá ra những mối liên hệ có tính quy luật của những hiện tượng giáo dục. mới loại bỏ được những yếu tố ngẫu nhiên. Sinh viên thực hiện: Đỗ Trung Thành. phù hợp với những quy luật đã được khẳng định thì mới có thể thoát khỏi những sự kiện lộn xộn. mang tính thực tiễn cao hơn. chất lượng câu trả lời của học sinh thể hiện sự suy nghĩ sâu sắc hay hời hợt. Quan sát . hiện tượng sư phạm mới ngoài dự kiến ban đầu. so sánh làm rõ kinh nghiệm thành công. Tổng kết kinh nghiệm phải có lý luận soi sáng. khá tích cực. Qua tổng kết kinh nghiệm. có độ Tin cậy cao. hời hợt không có tính phổ biến. đem lại hiệu quả. giải thích tính chất hợp lý. tránh được tình trạng lý luận suông. biện chứng theo tính lịch sử của vấn đề rút ra những kết luận có tính thuyết phục. giúp ta dựng lại một cách đầy đủ những gì mà ta đã quan sát được. từ đó phát hiện ra những vấn đề cần khẳng định để đưa ra áp dụng rộng rãi hoặc cần tiếp tục nghiên cứu hay loại bỏ. kỹ năng. phiếu điều tra. Nó có nguồn gốc từ kinh nghiệm. nhật ký. ảnh. hiện tượng. ghi âm. Những kinh nghiệm cần được đặc biệt chú ý là kinh nghiệm tiên tiến. Theo dấu hiệu về thời gian thì có quan sát . Bài học Trang 8 . đạt tới những kinh nghiệm có giá trị khoa học đích thực. chúng ta có được những bài học kinh nghiệm hàm chứa những tri thức. mang tính khoa học.

Phần cuối của sơ đồ cho thấy rõ mối liên hệ giữa tổng kết kinh nghiệm với nghiên cứu lý luận và thực nghiệm giáo dục.Những kết quả đạt được gắn với nhiệm vụ nghiên cứu. Trong đó cần chú trọng đến những dữ liệu. . hiệu quả của bài học kinh nghiệm. trừu tượng hóa các yếu tố ngẫu nhiên. nó phải được tiến hành theo một quy trình nghiêm túc. phát hiện thu thập được. tức là phải thu thập đủ về dữ liệu. Sinh viên thực hiện: Đỗ Trung Thành. Dùng lý luận để phân tích các tư liệu.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. cần áp dụng những thao tác tư duy khoa học. .Tên bài học kinh nghiệm .Hệ thống biện pháp đã vận dụng đạt kết quả cao. hoàn cảnh cụ thể. . . Những bước của quá trình phát hiện có thể là: .Nêu bối cảnh xuất hiện vấn đề mà khi giải quyết dẫn đến bài học kinh nghiệm.Nêu mục đích yêu cầu phát hiện. đưa ra nhận định có tính khái quát về bài học mang tính lý luận. thông tin mà nội dung của chúng phản ánh mối quan hệ giữa kết quả với nguyên nhân và biện pháp. mang tính khoa học với tính lý luận cụ thể và đặc biệt phải mang tính thực tiễn cao. .Đánh giá tác dụng.Tiến hành xử lý thông tin.Triển khai những hình thức phát hiện. Trong quá trình xử lý. mô tả quá trình Tước bỏ những yếu tố ngẫu nhiên làm bộc lộ cái bản chất Phát hiện mối quan hệ nhân quả Dùng lý luận soi sáng Dùng thực nghiệm kiểm chứng Phát hiện cần đảm bảo cả về mặt định tính và phần nào về mặt định lượng. . Rút ra bài học kinh nghiệm dưới dạng khái quát mang tính lý luận hay khẳng định về mặt lý luận và thực tiễn. Trang 9 . tư liệu về sự kiện. Bài học kinh nghiệm cần trình bày theo trình tự sau: . số liệu rút ra được từ thực tiễn. việc làm. các hoạt động đã tiến hành đạt kết quả cao nhất.Thẩm định. thường là như sau: Liệt kê sự kiện. Tổng kết kinh nghiệm không chỉ đơn giản là trình bày lại những công việc đã làm và những kết quả đã đạt được. tư liệu. bổ sung thông tin. Là một phương thức nghiên cứu khoa học. tất yếu mà chúng đã thể hiện trong bối cảnh. kinh nghiệm giáo dục phải bảo đảm có được một sự khái quát nhất định. tìm ra tính đặc thù. Khi tiến hành xử lý thông tin phải căn cứ vào cái có thực thu được qua quá trình khảo sát.

Sinh viên thực hiện: Đỗ Trung Thành. lại dùng lý luận để phân tích kết quả. Thông thường những phương pháp được sử dụng kết hợp với nhau. chỉ ở một số khâu mấu chốt. rất khó khăn. qua nghiên cứu lý luận. vừa có tính thực tiễn. quan sát. có kế hoạch. ví dụ như nghiên cứu lý luận. Sau đó. từ đó xác định và đánh giá kết quả của những tác động đó. Trong những điều kiện nhất định. 4. song thực hiện nó rất công phu. Thực nghiệm giáo dục Thực nghiệm giáo dục cho phép ta tạo nên những tác động sư phạm vào quá trình dạy học và giáo dục. định lượng được các dấu hiệu. tự giác thiết lập và thay đổi những điều kiện thực nghiệm cho phù hợp với ý đồ nghiên cứu của mình. ta mới dùng thực nghiệm giáo dục. Chẳng hạn. tổng kết kinh nghiệm. thay đổi được. tổng quát hơn những điều đã đạt được. Đặc trưng của thực nghiệm giáo dục là nó không diễn ra một cách tự phát mà là dưới sự điều khiển của nhà nghiên cứu. thực nghiệm giáo dục cho phép ta khẳng định hoặc bác bỏ một giả thuyết khoa học đã đề ra. Chỉ ở những chỗ các phương pháp này chưa đủ sức thuyết phục. Khó khăn là do chúng ta thực hiện một tác động lên những con người cụ thể. quan sát. làm cho kết quả thu được vừa có tính lý luận. đó là việc làm không dễ. trước hết có thể dùng những phương pháp không đòi hỏi quá nhiều công sức. Nhà nghiên cứu tổ chức quá trình giáo dục một cách có ý thức. Thực nghiệm giáo dục là một phương pháp nghiên cứu rất có hiệu lực. Trang 10 . người ta đề xuất một giả thuyết khoa học rồi đem thực nghiệm giáo dục để kiểm nghiệm. Những tác động này xảy ra trong những điều kiện có thể khống chế. cần phải đo lường. phải xử lý bằng phương pháp thống kê. Trong thực nghiệm giáo dục ta cần giải thích rõ kết quả. tổng kết kinh nghiệm. kết quả thu được phụ thuộc vào nhiều yếu tố tâm lý.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Vì thế ta không nên lạm dụng phương pháp thực nghiệm giáo dục. xác định nguyên nhân và khái quát hóa lên một trình độ cao hơn. Những kết quả thực nghiệm thường chỉ có ý nghĩa xác suất. ít chịu ảnh hưởng của những yếu tố ngẫu nhiên khác. làm rõ nguyên nhân bằng lý luận hoặc bằng sự phân tích quá trình thực nghiệm. Để thống kê cho kết quả Tin cậy. điều chỉnh. có mục đích. Khi nghiên cứu một hiện tượng giáo dục.

. với trình độ nhận thức và giác ngộ chính trị ngày càng cao những cách gợi động cơ xuất phát từ nội dung hướng và những nhu cầu nhận thức. CHƯƠNG I: GỢI ĐỘNG CƠ MỞ ĐẦU Để Gợi động cơ mở đầu chúng ta có thể gợi động cơ xuất phát từ thực tế hoặc xuất phát từ nội bộ Tin học. PHẦN II NỘI DUNG ĐỀ TÀI GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Gợi động cơ là làm cho học sinh có ý thức về ý nghĩa của những hoạt động và của đối tượng hoạt động. từ những phương thức tư duy và hoạt động Tin học. Tuy nhiên không phải bất cứ nội dung nào..Việc nêu vấn đề không đòi hỏi quá nhiều tri thức bổ xung. đương nhiên có thể đơn giản hóa vì lý do sư phạm trong trường hợp cần thiết. gợi động cơ trung gian và gợi động cơ kết thúc. Ở những lớp dưới. Gợi động cơ theo cách này là cần thiết vì: Trang 11 .Con đường từ lúc nêu vấn đề cho tới khi giải quyết vấn đề càng ngắn càng tốt. Nhờ đó. thầy giáo thường dùng những cách như cho điểm. Gợi động cơ nhằm làm cho những mục tiêu sư phạm biến thành những mục tiêu của cá nhân học sinh. Vì vậy. để gợi động cơ.Vấn đề đặt ra phải đảm bảo tính chân thực. chúng ta cần khai thác triệt để mọi khả năng để gợi động cơ xuất phát từ thực tế. .ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Việc xuất phát từ thực tế không những có tác dụng gợi động cơ mà còn góp phần hình thành thế giới quan duy vật biện chứng. cùng với sự trưởng thành của học sinh. khen chê. thông báo kết quả học tập cho gia đình. nhu cầu đời sống. đặt vấn đề một cách hình thức. học sinh nhận rõ việc nhận thức và cải tạo thế giới đã đòi hỏi phải suy nghĩ và giải quyết những vấn đề Tin học như thế nào. trách nhiệm đối với xã hội ngày càng trở nên quan trọng. tức là nhận rõ Tin học bắt nguồn từ những nhu cầu của đời sống thực tế. Mặc dù Tin học phản ánh thực tế một cách toàn bộ và nhiều tầng.. Trong đề tài này em xin đưa ra một số giải pháp gợi động cơ hoạt động trong việc giảng dạy chương trình con của ngôn ngữ lập trình Pascal theo từng giai đoạn như trên. . ta còn tận dụng cả những khả năng gợi động cơ xuất phát từ nội bộ Tin học. để gợi động cơ xuất phát từ thực tế cần chú ý các điều kiện sau: . Gợi động cơ không phải chỉ là việc làm ngắn ngủi lúc bắt đầu dạy một tri thức nào đó. Tuy nhiên. Gợi động cơ từ nội bộ Tin học là nêu vấn đề Tin học xuất phát từ nhu cầu Tin học. Sinh viên thực hiện: Đỗ Trung Thành. từ việc xây dựng khoa học Tin hoc. hoạt động nào cũng có thể gợi động cơ xuất phát từ thực tế. Càng lên lớp cao. chứ không phải chỉ là sự vào bài. Vì vậy. mà phải xuyên suốt quá trình dạy học. có thể phân biệt gợi động cơ mở đầu. Vì vậy.

.d1:0:2). Writeln('Chu vi bang : '. chẳng hạn một phân môn hay một chương ta nên cố gắng xuất phát từ thực tế.m1:0:2). Readln(b2). Write('b1 = '). Readln(a1). Trong đó: . a2. d2. Writeln('Hinh chu nhat thu hai:'). d1. Writeln('Chu vi bang : '. Write('a1 = '). d2 := a2 * b2.Hình thứ nhất có hai kích thước là a1.Hình thứ ba có hai kích thước là a1+b1 và a2*b2”. Readln(a2). Writeln('Hinh chu nhat thu nhat:'). Writeln('Hinh chu nhat thu ba:'). Writeln('Dien tich bang : '. Writeln('Dien tich bang : '.d2:0:2). b2 . c1 := 2 * (a1 + b1).d3:0:2).Hình thứ hai có hai kích thước là b1. Còn đối với từng bài hay từng phần của bài thì cần tính tới những khả năng gợi động cơ từ nội bộ Tin học. diện tích và đường chéo của ba hình chữ nhật theo hai kích thước của mỗi hình.Việc gợi động cơ xuất phát từ thực tế không phải bao giờ cũng thực hiện được. Sinh viên thực hiện: Đỗ Trung Thành. Write('b2 = '). Var a1. Writeln('Duong cheo bang: '. m1 := sqrt(a1 * a1 + b1 * b1).c2:0:2). d3. Begin Writeln('Nhap hai canh cua hinh chu nhat thu nhat:'). m3 := sqrt(sqr(a1 + b1) + sqr(a2 * b2)). Writeln('Nhap hai canh cua hinh chu nhat thu hai:'). m2 := sqrt(a2 * a2 + b2 * b2). Writeln('Duong cheo bang: '. b1. . Writeln('Chu vi bang : '. d3 := (a1 + b1) * (a2 * b2).c1:0:2). Write('a2 = '). c2 := 2 * (a2 + b2).m2:0:2). Trang 12 . m2.m3:0:2). c1. d1 := a1 * b1. c3. Writeln('Duong cheo bang: '. Đó là những cách sau đây: 1) Đáp ứng nhu cầu xóa bỏ sự hạn chế Xét bài toán : “Viết chương trình cho máy tính chu vi. c2. Writeln('Dien tich bang : '. m1.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. c3 := 2 * ((a1 + b1) + (a2 * b2)). Readln(b1).c3:0:2).Việc gợi động cơ từ nội bộ Tin học sẽ giúp học sinh hình dung được đúng sự hình thành và phát triển của Tin học cùng với những đặc điểm của nó và có thể dần dần tiến tới hoạt động Tin học một cách độc lập. Thông thường khi bắt đầu một nội dung lớn. b2. a2 . m3 : Real.

2). Trang 13 . i: Byte). Procedure Tinh(a. Writeln('Dien tich bang : '.. Tinh(a1 + b1. a2 * b2.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. 3). Var a1. Readln(y). Readln(x). a2.2 * (a + b):0:2). y: Real. Sinh viên thực hiện: Đỗ Trung Thành. 2). chắc chắn chương trình còn dài nữa. Tinh(a2. Write('Canh thu hai : '). Nếu có thêm điều kiện này. b: Real.i. Begin Writeln('Hinh chu nhat thu '. tính đi tính lại cho từng hình ta có thể viết 2 thủ tục: 1. Repeat Write('Canh thu nhat: '). Trong bài toán trên ta còn chưa có phần kiểm tra điều kiện nhập vào của mỗi hình. Thủ tục nhập hai cạnh của hình chữ nhật. b1. End. End. 2) Hướng tới sự tiện lợi hợp lý hóa công việc Xét bài toán sau: “Nhập vào 1 dãy n số nguyên lớn hơn 1. b2. b1. 1). diện tích và đường chéo của từng hình chữ nhật. k: Byte). Readln End. Until (x > 0) And (y > 0). Function NgTo(a: Integer):Boolean. Thay vì phải viết nhiều lần lệnh nhập. b1. Tinh(a1. b2. Procedure Nhap(Var x. 1). b2: Real. Begin Nhap(a1.n: Integer. chúng ta có thể hướng dẫn cho học sinh sử dụng chương trình con để khắc phục sự hạn chế đó. Nhap(a2. Var A: Array[1. Giả sử nếu phải tính đến n hình chữ nhật thì vấn đề quả thực là hết sức phức tạp.k. Begin Writeln('Nhap hai kich thuoc cua hinh chu nhat thu '.':').':').a * b:0:2). Readln End. Thủ tục Tính ba giá trị cho mỗi hình. If (x <= 0) Or (y <= 0) Then Writeln('Nhap lai!'). chúng ta phải viết đi viết lại ba dòng liên tiếp tính chu vi. Writeln('Duong cheo bang: '. 2.100] Of Integer. Vấn đề đặt ra là: làm thế nào có thể xóa bỏ được sự hạn chế này? Ở đây. k. Var u: Integer. Viết ra màn hình tất cả các số của dãy thỏa mãn điều kiện là số nguyên tố”. Writeln('Chu vi bang : '.sqrt(a * a + b * b):0:2). Chương trình trên để thực hiện được yêu cầu của đề bài.

ta cần chính xác hóa khái niệm sử dụng tham biến của chương trình con.Dòng lệnh Writeln(‘Cac so nguyen to cua day so tren la:’). tiết kiệm công sức lập trình. Chẳng hạn. tới một thời điểm nào đó có đủ điều kiện thì chúng ta có thể gợi lại vấn đề và giúp học sinh chính xác hóa khái niệm đó. Begin Trang 14 . Until A[k] >= 2. Sinh viên thực hiện: Đỗ Trung Thành. Cụ thể là với bài toán trên chúng ta có thể sửa chữa thành bài toán: “Viết ra màn hình tất cả các số của dãy thỏa mãn điều kiện là hợp số” chỉ bằng hai câu lệnh: . Writeln('Nhap cac phan tu cua day. Sửa thành: Writeln(‘Cac so la hop so cua day so tren la:’). Var r1. If A[k] < 2 Then Writeln('Ban can nhap A[k] > 2. Writeln('Cac so nguyen to cua day so tren la:'). Đồng thời. Sau đó tính chu vi và diện tích của mỗi đường tròn đó”.'] = '). chúng ta có thể yêu cầu học sinh làm bài tập sau: “Viết một thủ tục nhập vào số đo bán kính của 3 đường tròn. Chu y: A[k] >= 2')..k. For k := 1 to n do Begin Repeat Write('A['. r2. Begin NgTo:=False. End. Begin Write('Nhap so phan tu: '). Procedure Nhap( r: Real.Dòng lệnh : If NgTo(A[k]) Then Write(A[k]:6) ta thay bằng dòng lệnh If Not NgTo(A[k]) Then Write(A[k]:6). For u := 2 To Trunc(sqrt(a)) Do If a mod u = 0 Then Exit. . chương trình con giúp cho người lập trình dễ sửa chữa. Readln(n). Từ chương trình trên chúng ta có thể giúp cho học sinh thấy được việc sử dụng chương trình con có thể hợp lý hóa. k:Byte). For k := 1 to n do If NgTo(A[k]) Then Write(A[k]:6). những kết luận chính xác liên quan tới khái niệm đó. Readln End. r3: Real. Sau khi học cách sử dụng tham trị. End.Readln(A[k]). Vui long nhap lai!'). NgTo := a > 1. dễ kiểm tra.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. 3) Chính xác hóa một khái niệm Có những khái niệm mà học sinh đã biết ở từng bài riêng lẻ chưa thể đưa ra ngay những nhận xét.

Nhap(r3.' Dien tich bang:'. Writeln('Duong tron 1 Chu vi bang:'. Writeln('Duong tron 2 Chu vi bang:'. 2). 1). Begin Nhap(r1. r3: Real. Trang 15 . Readln(r). 3).2 * pi * r1:6:1.pi * sqr(r1):6:1). nếu ra khỏi chương trình con nó sẽ không còn lưu giữ giá trị đó.' Dien tich bang:'. Học sinh sẽ phát hiện ra là kết quả chu vi và diện tích của cả ba đường tròn đều bằng 0. 2). còn giá trị của tham trị chỉ lưu giữ khi thực hiện chương trình con.pi * sqr(r2):6:1). Begin Nhap(r1. Nhap(r3. r2. Repeat Write('Nhap ban kinh cua duong tron thu '. Readln End. Writeln('Duong tron 1 Chu vi bang:'. Vấn đề đặt ra là: Chương trình sai ở chỗ nào? Lúc này giáo viên có thể khẳng định sự phân biệt giữa tham biến và tham trị. Readln(r).2 * pi * r3:6:1.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.': '). If r <= 0 Then Writeln('Nhap lai!'). các giá trị của tham biến được lưu giữ khi ra ngoài chương trình con.2 * pi * r2:6:1. End. 3). Writeln('Duong tron 3 Chu vi bang:'. Until r > 0.' Dien tich bang: '. If r <= 0 Then Writeln('Nhap lai!').2 * pi * r2:6:1. Until r > 0.k. 1). Procedure Nhap(Var r: Real. Chương trình trên cần sửa lại như sau: Var r1. Nhap(r2. Writeln('Duong tron 2 Chu vi bang:'.pi * sqr(r1):6:1).pi * sqr(r2):6:1). End.pi * sqr(r3):6:1). Nhap(r2. Sinh viên thực hiện: Đỗ Trung Thành. Begin Repeat Write('Nhap ban kinh cua duong tron thu '.' Dien tich bang:'. k:Byte).' Dien tich bang: '. Điều này sẽ giúp cho chúng ta chính xác hóa khái niệm tham biến và tham trị cho học sinh.k.2 * pi * r1:6:1. Chúng ta có thể yêu cầu học sinh thực thi chương trình trên và chạy thử.': ').

. Readln(c). Writeln('Duong tron 3 Chu vi bang:'.i. Sau khi học xong về chương trình con. Readln End. {Bien cuc bo} Begin Trang 16 Không Có tham chiếu Tham trị . Readln(b). Sinh viên thực hiện: Đỗ Trung Thành.. {Thu tuc co tham bien} Begin Writeln('Nhap vao ba canh cua tam giac thu '. c) Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). b. i:Byte).2 * pi * r3:6:1. khi nào dùng tham biến.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.. z: Real): Boolean. sau đó tính diện tích của mỗi tam giác vừa nhập và tổng diện tích của tất cả các tam giác đó”. các chương trình con gọi lẫn nhau như thế nào?.3. c: Real. Procedure Nhap(Var a.100] Of Real. Function DT(m. b. End. Until Ktra(a. n. đâu là biến địa phương. .' Dien tich bang:'. End. Repeat Write('Nhap do dai canh thu nhat: '). Chúng ta có thể đưa ra ví dụ sau: “Viết chương trình nhập vào số cạnh của n tam giác. để giúp cho học sinh nhìn thấy vấn đề có hệ thống một các rõ ràng hơn. 4) Hướng tới sự hoàn chỉnh hệ thống Để có thể giúp học sinh nắm bắt được các kiến thức về chương trình con một cách có hệ thống . {Ham co tham tri} Begin Ktra := (x < y + z) And (y < x + z) And (z < x + y).1. b. If Not Ktra(a. y. Chẳng hạn đâu là biến toàn cục.pi * sqr(r3):6:1). Readln(a). chúng ta có thể đưa ra sơ đồ sau: Thủ tục Chương trình con Hàm Có tham chiếu Tham biến Tiếp theo. c).': '). Write('Nhap do dai canh thu hai : '). {Ham co tham tri} Var d: Real. khi nào dùng tham trị. Var a:array[1. đặc biệt là giúp cho học sinh hiểu rõ các vấn đề về chương trình con. {Bien toan cuc} Function Ktra(x.. Write('Nhap do dai canh thu ba : '). p:Real): Real.

End. 5) Lật ngược vấn đề Xuất phát.Readln(n). a[2. c.n.k]. Doi(x). For k:=1 to n do Nhap(a[1. C. .m) * (d . B. End. k]. d := (m + n + p) / 2.': '. {Bien cuc bo} Begin Write('Nhap so tam giac: '). a[2. k]. tong:=0.' tam giac la: '. Write('Doi sang chu hoa: '). Var x:String. a[3. Readln End... k]):6:1). a[2. Begin d := 0.DT(a[1. chúng ta đặt câu hỏi: Nếu ta cần đổi một xâu ký tự thành xâu chữ thường thì làm thế nào? Học sinh đã biết trong bảng mã ASCII mỗi ký tự viết hoa A. Readln(x). Begin Write('Nhap xau: '). k].k.k]. Procedure Doi(x: String). tong: Real.n) * (d . a[3. DT := sqrt(d * (d . Begin Tinh. Z được mã hóa bằng các con số từ 65 đến 90. n. End. End. For I := 1 to Length(x) Do Write(Upcase(x[i])). k). Ngược lại... z được mã hóa bằng các con số từ 97 đến 122. For k:=1 to n do Begin Tong := tong + DT(a[1. i:Integer.p)). b. chúng ta cho học sinh thực hiện bài toán sau: “Viết chương trình đổi một xâu ký tự thành chữ HOA”. {Thu tuc khong co tham chieu} Var k.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Writeln('Dien tich cua tam giac thu '.tong:6:1). j: Integer. Var d.k]. Writeln('Tong dien tich cua '. Sinh viên thực hiện: Đỗ Trung Thành. Readln End.k]).k]. . Ta thấy rõ mỗi ký tự viết hoa và viết thường của một chữ Trang 17 . . Procedure Tinh. Còn các ký tự thường a. a[3.

p: Real). ta có thể sử dụng quy luật này để đổi một xâu ký tự viết HOA thành xâu ký tự viết thường bằng cách dùng một vòng For chạy từ đầu xâu đến cuối xâu và đổi từng ký tự thành mã ASCII. End. Procedure Doi(x: String). Write('Nhap do dai canh thu hai : '). Doi(x). cách nhau 32 đơn vị. Readln(x). If (d >= 65) And (d <= 90) Then d := d + 32. Begin Repeat Write('Nhap do dai canh thu nhat: '). b. b. 6) Xét tương tự Xuất phát từ bài toán: “Viết chương trình tìm độ dài 3 đường cao của một tam giác khi biết độ dài 3 cạnh của tam giác đó”. Write('Nhap do dai canh thu ba : '). Write(chr(d)). Begin d := 0. For i := 1 to Length(x) Do Begin d := ord(x[i]). Begin Ktra := (x < y + z) And (y < x + z) And (z < x + y). Readln(p). i:Integer. z: Real): Boolean. Until Ktra(a. S: Real. Procedure Nhap(Var m. c. Readln(n). Function DT :Real. Sinh viên thực hiện: Đỗ Trung Thành. Readln End. c). Trang 18 . Var d. Begin Write('Nhap xau: '). n. End. If Not Ktra(m. nếu gặp ký tự viết hoa. Chương trình như sau: Var x: String. Chính vì vậy. ta cộng mã ASCII của nó thêm 32 đơn vị. Readln(m). End. Write('Doi sang chu thuong: '). Var a. p) Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). Function Ktra(x. y. Var d: Real.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. End. n.

Trang 19 . c: Real).a * a):0:2). Until Ktra(a. End.0. S: Real. b.b) * (d . Writeln('Trung tuyen qua canh '. S:=DT.' la: '. m:0:2. b.' la: '. Readln(b).ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.c)). Write('Nhap do dai canh thu hai : '). Begin Ktra := (x < y + z) And (y < x + z) And (z < x + y). c).5 * sqrt(2 * (a * a + c * c) .a:0:2. Readln End. DCao(a). c). Write('Nhap do dai canh thu ba : '). Procedure Dcao(m: Real).c * c):0:2).2 * S / m:0:2).b:0:2.5 * sqrt(2 * (b * b + c * c) . Writeln('Trung tuyen qua canh '. DCao(b).5 * sqrt(2 * (b * b + a * a) .c:0:2. Function Ktra(x. Procedure Nhap(Var a. Begin d := (a + b + c) / 2. End.' la: '. Begin Writeln('Trung tuyen qua canh '. DCao(c). Begin Writeln('Duong cao qua canh '. Begin Repeat Write('Nhap do dai canh thu nhat: '). c. Readln(a).a) * (d . y.0.' la: '. End. End. Readln(c). Procedure Trung_Tuyen. b. c) Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). If Not Ktra(a.0. End. Var a. chúng ta yêu cầu học sinh giải bài toán sau: “Viết chương trình tìm độ dài 3 đường trung tuyến của một tam giác khi biết ba cạnh của tam giác”. Tương tự. Begin Nhap(a. DT := sqrt(d * (d .b * b):0:2). Sinh viên thực hiện: Đỗ Trung Thành. b. b. z: Real): Boolean.

Begin Writeln('Nhap ba so: ').b). Trung_Tuyen. Begin Repeat Writeln('Nhap vao 2 so:'). Var a. 7) Khái quát hóa Xuất phát từ bài toán: “Tìm ước chung lớn nhất của 2 số ”.'.'. b. Sinh viên thực hiện: Đỗ Trung Thành.c. Readln(a. x := y. Readln End. b. Var a. Write('UCLN('. Function UCLN(Var x. b).') = ').ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. End. If (a<=0) Or (b<=0) then Writeln(‚Nhap lai!’). While a <> b do Begin If a > b Then a := a .'. Begin Nhap(a. Readln(a. tam: Integer. Write(UCLN(tam.b Else b := b . y := tam. UCLN := x.') = '). để viết hàm tính ước chung lớn nhất của hai số. Readln Trang 20 . Until (a>0) And (b>0).'. chúng ta nên hướng dẫn học sinh sử dụng thuật toán Ơclit để viết chương trình nhằm tăng tốc độ tính toán. Readln End.a. c). c)).a. Begin While y<>0 do Begin tam := x mod y. Write('UCLN('.'. Chúng ta yêu cầu học sinh: “Sử dụng chương trình con để tìm ước chung lớn nhất của ba số ”. Tiếp theo. b: Integer. c.a. Đến đây. y: Integer): Integer.'.b. b. End. tam := UCLN(a.b. End. c). Write(a). Var tam: Integer.

'. Cuối cùng. việc xét sự liên hệ và phụ thuộc chỉ có tác dụng gợi động cơ người học sinh đã quen thuộc với những cách xem xét này. y := tam. 8) Tìm sự liên hệ và phụ thuộc Nói riêng đối với cách gợi động cơ xuất phát từ những phương thức tư duy và hoạt động phổ biến trong Tin học như xét tương tự. Begin Write('Ban can tinh UCLN cua bao nhieu so? Nhap: '). End. Để thực hiện. x := y. n: Integer. Write(a[n]. Begin While y<>0 do Begin tam := x mod y. Readln End. khái quát hóa. ước chung lớn nhất của dãy chính là giá trị u. ta có thể hướng dẫn học sinh dùng thủ tục tìm ước chung lớn nhất của hai số. Var tam. Để thực hiện được điều này khi dạy học cho học sinh về chương trình con. Write('UCLN('). tg: Integer. việc xét tương tự. Writeln. u := a[1]. For i := 1 to n do Begin Write('So thu '. Sinh viên thực hiện: Đỗ Trung Thành. Readln(n).i. End. Readln(A[i]). Procedure UCLN(Var x. đã trải nghiệm thành công nhiều lần là việc theo cách đó. dùng một biến tạm là u để lưu giữ giá trị đầu tiên của dãy số. Chúng ta có thể yêu cầu học sinh giải bài toán sau: Trang 21 . a1.': '). Var A: Array[1. Khái quát: chúng ta yêu cầu học sinh giải bài toán: “Viết chương trình tìm ước chung lớn nhất của n số ”. xét sự liên hệ và phụ thuộc. việc xét khái quát hóa. For i:= 2 to n do UCLN(u. For i := 1 to n-1 do Write(a[i]. Thật vậy.') = '). a[i]). Sau đó. Sau khi thực hiện việc sử dụng chương trình con để tìm ước chung lớn nhất của ba số thành công. u.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. End. End.100] Of Integer. Write(u). tiếp theo ta lần lượt xác định ước chung lớn nhất của u với từng giá trị của dãy từ vị trí thứ hai. y: Integer).'). sự quen thuộc đối với phương thức này không chỉ là kết quả mà còn là điều kiện của việc gợi động cơ theo cách đó.. i.

End. d := d . t2 := W[j].' va W['. C[j] := C[j-1]. CW[i] := C[i] / W[i]. CW: Array[1.W[i]. Var temp: Integer. t := t + W[i] * temp.1 do For j := n downto i + 1 do Begin If CW[j] > CW[j-1] Then Begin t1 := C[j].'] = '). Cần chọn các đồ vật sao cho giá trị của túi là lớn nhất. While (i <= n) And (d > 0) And (W[i] > 0) Do Begin Temp := d Div W[i].100] Of Real. Sinh viên thực hiện: Đỗ Trung Thành. Procedure Nhap. End.. t: Integer. Biết rằng mỗi đồ vật i có khối lượng là W[i] và giá trị là C[i] đồng (i = 1. End. End. End. Readln(n). Begin Nhap. Readln(C[i]).i. d. {So do vat duoc chon cua W[i]} If temp > 0 Then Begin Writeln('Do vat C['. gt := gt + temp * C[i]. i. For i := 1 to n .ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.. For i:=1 to n do Begin Write('C['. CW[j-1] := t3. End.'] = '.'] = '. W[j] := W[j-1]. t3 := CW[j].' duoc chon co so luong '.i. Var C. D1:=D. Var t1. t3: Real. Procedure Luachon. Trang 22 . 2. gt..temp * W[i].temp).i. gt := 0. “Có một cái túi chứa tối đa D (kg) với n đồ vật. n. W[j-1] := t2. n ”. CW[j] := CW[j-1]. Readln(W[i]). Write('Nhap khoi luong cua tui: ').. j.'] = ').100] Of Integer. i := 1. Write('W['. Procedure Sapxep. W:Array[1. Writeln('Nhap cac gia tri cua C va W: ').i.. Begin Write('Nhap so luong cac do vat: '). Begin Sapxep. d1. t := 0. . Readln(D). C[j-1] := t1. t2: Integer.C[i].

tui dung duoc '.-c/b:0:1) Else Begin d := b * b . Writeln('x1 = '. Con thua '. End.d1 . Sinh viên thực hiện: Đỗ Trung Thành. b. Write('b = ').t. CHƯƠNG II: GỢI ĐỘNG CƠ TRUNG GIAN 1) Hướng đích Xuất phát từ bài toán giải phương trình bậc hai: Var a.'. Readln End.'. d: Real. Readln(b).(-b + sqrt(d)) / (2 * a):0:1). Readln(c).t). Readln(a). Begin Writeln('Nhap 3 he so cua phuong trinh:'). End. End. Writeln('Gia tri toi uu co the dat duoc la:'). If a = 0 Then If b = 0 Then If c = 0 Then Writeln('Phuong trinh co vo so nghiem!') Else Writeln('Phuong trinh vo nghiem!') Else Writeln('Phuong trinh co mot nghiem: x = '.b / (2 * a):0:1) Else Begin Writeln('Phuong trinh co hai nghiem phan biet:').sqrt(d)) / (2 * a):0:1). If d < 0 Then Writeln('Phuong trinh vo nghiem!') Else If d = 0 Then Writeln('Phuong trinh co nghiem kep: x1 = x2 = '. Mục tiêu là chia bài toán ban đầu thành những bài toán nhỏ độc lập.4 * a * c. Chẳng hạn:Ta sử dụng chương trình con thành hai bài toán : Trang 23 . End. Write('c = '). Writeln('Khoi luong do vat dung '. Begin Luachon. i := i + 1.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Write('a = ').d1. Writeln('x2 = '. c.(-b . Readln End.

Readln(a). c).sqrt(d)) / (2 * x):0:1). b. b. Begin D := y * y .y / (2 * x):0:1) Else Begin Writeln('Phuong trinh co hai nghiem phan biet:').(-y + sqrt(d)) / (2 * x):0:1). Var d: Real. z: Real). Begin If m = 0 Then If n = 0 Then Writeln('Phuong trinh co vo so nghiem!') Else Writeln('Phuong trinh vo nghiem!') Else Writeln('Phuong trinh co mot nghiem: x = '. Write('a = '). d: Real. c) Else ptb2(a. T1: Giải phương trình bậc nhất T2: Giải phương trình bậc hai Var a. Readln(c).n:Real). Write('c = '). If d < 0 Then Writeln('Phuong trinh vo nghiem!') Else If d = 0 Then Writeln('Phuong trinh co nghiem kep: x1 = x2 = '. Procedure ptb1(m.(-y . c: Real. y. Procedure ptb2(x.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. c. Procedure ptb1(m.-n/m:0:1) End. Ta lại thấy trong bài toán trên việc giải phương trình bậc hai có ba trường hợp xảy ra. Writeln('x1 = '. If a=0 Then ptb1(b. Ta nên chia tiếp thành 5 bài toán nhỏ như sau: T1: Giải phương trình bậc nhất T2: ∆ > 0 T3: ∆ = 0 T4: ∆ < 0 T5: Giải phương trình bậc hai Var a.4 * x * z. End. End. b. Readln End. Readln(b). Write('b = '). n : Real). Writeln('x2 = '. Begin Writeln('Nhap 3 he so cua phuong trinh:'). Trang 24 . Sinh viên thực hiện: Đỗ Trung Thành.

Begin Writeln('Phuong trinh co hai nghiem phan biet:').ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. y) Else denta_duong(x. Readln(c). Write('a = ').4 * x * z. Procedure denta_0(p. z: Real). If a = 0 Then ptb1(b. j: Real). 2) Quy lạ về quen k Xét bài toán : Tính C n . Begin Writeln('Phuong trinh co nghiem kep: x1 = x2 = '. q: Real).(-j + sqrt(d)) / (2 * i):0:1). Writeln('x2 = '. y).-q / (2 * p):0:1) End.-n / m:0:1) End. Trang 25 . Procedure denta_duong(i. If d < 0 Then denta_am Else If d = 0 Then denta_0(x. Begin Writeln('Nhap 3 he so cua phuong trinh:'). Writeln('x1 = '. c). Học sinh đã biết công thức : k Cn = n! k! ( n − k )! . Readln End. Tuy nhiên. c) Else ptb2(a. b. ta tìm C n bằng công thức trên. Readln(b). Procedure denta_am. Bài toán này ta quy về bài toán quen thuộc là tính n! Ở đây chúng ta cần lưu ý với học sinh rằng: Để k k tính C n ta cần xây dựng chương trình con tính n! sau đó. Write('b = '). Procedure ptb2(x. Begin d := y * y . End. Begin Writeln('Phuong trinh vo nghiem!'). y. Sinh viên thực hiện: Đỗ Trung Thành. Write('c = '). Begin If m = 0 Then If n = 0 Then Writeln('Phuong trinh co vo so nghiem!') Else Writeln('Phuong trinh vo nghiem!') Else Writeln('Phuong trinh co mot nghiem: x = '. cũng cần phải xây dựng một chương trình con Nhap để tránh việc người sử dụng nhập các số âm và nhập k > n. Readln(a). End.(-j .sqrt(d)) / (2 * i):0:1). End.

Until (k > 0) And (n > 0) And (k < n). Readln End. End. 3) Xét tương tự Xuất phát từ bài toán: “Tính n! bằng thuật toán đệ quy”. Writeln('C = '. Begin Nhap. Writeln(n.k)). Begin kq:=1. n: Integer. Begin If a = 0 Then GT:=1 Else GT:=GT(a . Write('Nhap n = '). C := GT(n) / (GT(k) * GT(n . Begin Write('Nhap n = ').ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Readln(n).1) * a. If (k < 0) Or (n < 0) Or (k > n) Then Writeln('Nhap lai!'). y:Integer):Real. Begin Repeat Write('Nhap k = '). i:Integer. Function Mu(x:Integer. Readln(n). End. End. Readln(k). Tương tự. Var n: Integer. Trang 26 . Var k. Readln End. C:0:0). Procedure Nhap. Function GT(a:Integer): Real. Var kq. Sinh viên thực hiện: Đỗ Trung Thành. For i:=1 to a do kq:=kq * i. Function GT(a:Integer): Integer. n: Integer. GT(n):0:0).'! = '. C:Real. chúng ta yêu cầu học sinh thực hiện giải bài toán: “Tính an bằng thuật toán đệ quy” Var a. GT:=kq. Var T: Real.

x := y.n. Var a. End. Readln End. Sapxep(a. y := tg. Begin If x > y Then Begin tg := x. Readln(a). Readln End. Var tg: Real. End. Writeln('Ba so sau khi sap xep la:'). c). End. z. n):0:0).c: Real. y := tg. Begin If y = 0 Then Mu:=1 Else Begin Mu:=Mu(x. b. Readln(c). y . Write(a:6:0. End.b. Readln(n).' = '. Những giá trị này bị thay đổi qua những lệnh gán. End. b. Write('So thu hai : '). z: Real). Tại sao lệnh thứ ba lại giống lệnh thứ nhất? đó là vì x. tg là các địa chỉ lưu trữ những giá trị. Begin Write('Nhap a = '). If x > y Then Begin tg := x. c:6:0). Vì vậy mà trước khi thực hiện lệnh gán x := y để máy nhận giá trị của b ta phải gửi giá trị cũ của x vào biến tg. Begin Writeln('Nhap vao ba so: '). Readln(b). Sinh viên thực hiện: Đỗ Trung Thành. Write('So thu nhat: '). x := y. Writeln(a. Trang 27 . Ở đây chúng ta cần lưu ý với học sinh rằng : lệnh gán nhận giá trị mới thì mất giá trị cũ. 4) Khái quát hóa Xuất phát từ bài toán: “Sắp xếp ba số a. If y > z Then Begin tg := y. b:6:0. z := tg. Write('So thu ba : '). End. y.1) * x.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Readln(a). y. y := z. c theo thứ tự tăng dần”.Mu(a . Procedure Sapxep(Var x. Write('Nhap n = ').' mu '.

Tiếp theo. End. End. Trang 28 . nếu phải sắp xếp n số theo thứ tự tăng dần ta phải làm thế nào? Ta có chương trình như sau: Var a: Array[1.. Readln(a[i]). x := y. Tức là một số phải nhỏ hơn tổng của hai số còn lại (điều này xảy ra với cả ba số). For i := 1 to n do Begin Write('So thu '. y := tg. Function Ktra(x. Sau đó. Readln End. End.n: Integer. End. 5) Xét sự biến thiên và phụ thuộc Xét bài toán sau : “Viết chương trình cho máy nhập vào 3 cạnh của một tam giác. Địa chỉ của biến thì không đổi. i. học sinh phải kiểm tra ba số thực phải thỏa mãn điều kiện là ba số đo của tam giác.i. Begin For i := 1 to n . Var p. Begin Write('Nhap so phan tu cua day so: '). chúng ta có thể nêu câu hỏi: Khái quát. For i := 1 to n do Write(a[i]:6:0). nếu chúng là ba số đo của ba cạnh một tam giác thì dạng của tam giác phụ thuộc vào bình phương của cạnh lớn nhất nhỏ hơn hay bằng hay lớn hơn tổng hai bình phương của hai cạnh còn lại mà nó là tam giác có ba góc nhọn hay tam giác vuông hay tam giác tù.': '). Readln(n). a[j]). Var tg:Real. Begin Tg := x. Procedure Doicho(Var x.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.100] Of Real. nhưng nội dung của biến thì đã thay đổi khi thực hiện lệnh gán.j. Sinh viên thực hiện: Đỗ Trung Thành. z: Real): Boolean.y:Real). y. Xét xem ba số đó có phải là ba cạnh của tam giác hay không? nếu có thì tam giác đó là tam giác có ba góc nhọn hay tam giác vuông hay tam giác tù? ” Trước hết. Writeln('Day so sau khi sap xep la:'). Sapxep.1 do For j := i + 1 to n do If a[i] > a[j] Then Doicho(a[i]. Procedure Sapxep.r: Real. Begin Ktra := (x < y + z) And (y < x + z) And (z < x + y).q.

If m < p Then Begin tg := p. Readln(a). If m < n + p Then Writeln('la tam giac co ba goc nhon!') Else If m = n + p Then Writeln('La tam giac vuong!') Else Writeln('La tam giac co mot goc tu!'). End. Trong thực tế của hoạt động dạy học. n. tại sao lại thực hiện hoạt động kia. p := sqr(p). Những câu hỏi này phải đợi mãi về sau mới được giải đáp hoặc giải đáp trọn vẹn. m := tg. Var tg: Real. CHƯƠNG III: GỢI ĐỘNG CƠ KẾT THÚC Gợi động cơ kết thúc cũng có tác dụng nâng cao tính tự giác trong hoạt động học tập của học sinh như các cách gợi động cơ khác. End. b. Write('Nhap do dai canh thu ba : '). If Not Ktra(a. ta chưa thể làm rõ tại sao lại học nội dung này. Begin If m < n Then Begin tg := n. c) Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). m := tg. r). Readln End. nhưng nó góp phần gợi động cơ thúc đẩy hoạt động nói chung và nhiều khi việc gợi động cơ kết thúc ở trường hợp này lại là sự chuẩn bị gợi động cơ cho những trường hợp tương tự sau này. Readln(b). Repeat Write('Nhap do dai canh thu nhat: '). Procedure Nhap(Var a. End. c: Real). Procedure DangTG(m. Write('Nhap do dai canh thu hai : ').ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. nhiều khi ngay từ đầu hoặc trong khi giải quyết vấn đề. q. Begin Nhap(p. Begin Writeln('Nhap vao ba canh cua tam giac: '). Readln(c). Trang 29 . End. n := sqr(n). Sinh viên thực hiện: Đỗ Trung Thành. Until Ktra(a. p: Real). m := sqr(m). n := m. q. Mặc dù nó không có tác dụng kích thích đối với nội dung đã qua hoặc hoạt động đã thực hiện. DangTG(p. b. c). b. p := m. r).

Procedure Trung_Tuyen(m. Begin Nhap. Readln End. Begin Writeln('Trung tuyen qua canh '. End. b.5 * sqrt(2* (n * n + p * p) . c. c). a). End. Procedure Nhap. c được nhận vào từ bàn phím”.' la: '. Readln(c). b.0. b. If Not Ktra Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). nhấn mạnh hiệu quả của nội dung hoặc hoạt động đó với việc giải quyết vấn đề đặt ra. Xét bài toán sau: “Lập chương trình cho máy tính tìm các đường trung tuyến của một tam giác khi biết số đo ba cạnh là a. S: Real. Procedure BaTT. Readln(b).m:0:2. thủ tục Nhap. n. Việc sử dụng những chương trình con này sẽ được đề cập đến với những tham chiếu trong bài toán cần tính các Trang 30 . Sau khi chương trình đã chạy thông suốt. Trung_tuyen(b. Sinh viên thực hiện: Đỗ Trung Thành. Trung_tuyen(c. c). ta đã gợi động cơ kết thúc. p: Real). b. Cụ thể là: Var a. Write('Nhap do dai canh thu hai : ').m * m):0:2). Begin Ktra := (a < b + c) And (b < a + c) And (c < a + b). Trong bài toán này chúng ta yêu cầu học sinh chia ra thành nhiều bài toán nhỏ độc lập. Begin Repeat Write('Nhap do dai canh thu nhat: '). ta gọi lại chương trình và cho học sinh thấy được trong bài toán này là tính các đường trung tuyến của một tam giác nên các hàm Ktra. Until Ktra. End. thủ tục BaTT không có tham chiếu. Readln(a). Write('Nhap do dai canh thu ba : '). Function Ktra: Boolean. Như vậy. Begin Trung_tuyen(a.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. a. End. BaTT.

b2. c:Real. 2). End. 1). c2. Để thực hiện được ý định trên. End.5* sqrt(2* (n * n + p * p) . c1 + c2”. b1. Readln(a). b1. Begin Nhap(a1. S: Real. . Function Ktra(x. b. ta yêu cầu học sinh giải bài toán sau: “Lập trình cho máy tính in lên màn hình các đường trung tuyến của tam giác theo độ dài ba cạnh của tam giác đó. Until Ktra(a. Readln End. End. c: Real. c) Then Writeln('Ba do dai vua nhap khong phai la 3 canh tam giac! Nhap lai:'). b.0. z: Real): Boolean.a2. BaTT(a1 + a2. y. c1. If Not Ktra(a. Write('Nhap do dai canh thu hai : '). c1. c). c). b. Begin Ktra := (x < y + z) And (y < x + z) And (z < x + y). Begin Writeln('Tam giac thu '.m * m):0:2). c1. a. Repeat Write('Nhap do dai canh thu nhat: '). . Begin Writeln('Do dai ba trung tuyen cua tam giac thu '. Nhap(a2 . p: Real). Sinh viên thực hiện: Đỗ Trung Thành. k: Byte). c2.k.i. a). b.b2. 1).Tam giác thứ hai có độ dài ba cạnh là a2. 2). b2. Procedure Nhap(Var a. Procedure BaTT(a. 3).Tam giác thứ ba có độ dài ba cạnh là a1 + a2. Readln(b). b. c2. Begin Writeln('Trung tuyen qua canh '. Trang 31 . c). . End. b1. i:Byte).' la: '. Readln(c). BaTT(a1. Var a1. BaTT(a2.':').ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Procedure Trung_Tuyen(m. c1 + c2. đường trung tuyến của nhiều tam giác mà cách xác định ba cạnh của từng tam giác có thể khác nhau. c1. Trung_tuyen(a.m:0:2. b1 + b2. b1. b. b1 + b2. c2.Tam giác thứ nhất có độ dài ba cạnh là a1. Write('Nhap do dai canh thu ba : '). n.':'). b2. Trung_tuyen(c. Trung_tuyen(b.

thực hiện được hoạt động đó là một yếu tố văn hóa phổ thông của tất cả mọi người trong xã hội. thúc đẩy hoạt động học tập. tạo ra một sự hợp đồng tác dụng của nhiều cách gợi động cơ. học sinh cần phải ứng dụng vấn đề thực tế là cần phải biết cách tính điểm TBm sau đó áp dụng các kiến thức về chương trình con và kiến thức về xử lý xâu ký tự để áp dụng thực hiện chương trình. Tuy nhiên cách gợi động cơ hướng nghiệp này lại có nhược điểm là nó không hấp dẫn đối với học sinh không có dự định làm nghề đó sau này. cách nọ bổ xung cách kia. Để làm được bài toán này. Hơn nữa. Trong l1 + l 2 * 2 + 3 . . còn điểm hệ số 3 có thể là số thực chỉ có một điểm duy nhất. cho điểm. có thể gợi động cơ cho một nội dung dạy học hoặc một hoạt động nào đó bằng cách nhấn mạnh tầm quan trọng của nội dung hoặc của một hoạt động này đối với một nghề nào đó trong xã hội. Ngoài ra. Thí dụ : Viết chương trình nhập các điểm của một môn trong một học kỳ.Tầm quan trọng của nội dung hoạt động cần được xem xét. Tuy nhiên chúng ta cũng cần lưu ý khi nhập điểm. Vì vậy có thể bổ xung bằng cách nhấn mạnh rằng nắm được nội dung đó. muốn gợi động cơ cho mọi nội dung và mọi hoạt động là không hợp lý và không khả thi. . CHƯƠNG IV : PHỐI HỢP NHIỀU CÁCH GỢI ĐỘNG CƠ TẬP TRUNG VÀO NHỮNG TRỌNG ĐIỂM Trên đây chúng ta đã xét đến những khả năng gợi động cơ xuất phát từ nội dung dạy học.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.Kiến thức có sẵn và thời gian cần thiết. việc nhập điểm cần lưu ý Trang 32 hs1 + hs 2 * 2 + hs 3 * 3 . Sau đó tính điểm trung bình môn của môn học đó theo công thức : đó : hs1 : tổng các điểm hệ số 1 l1: số lần điểm hệ số 1 hs2 : tổng các điểm hệ số 2 l2 : số lần điểm hệ số 2 hs3 : Điểm thi học kỳ Yêu cầu chỉ nhập 3 lần là đủ. Để phát huy tác dụng kích thích. cần phải phối hợp những cách gợi động cơ khác nhau có chú ý đến xu hướng phát triển của cá nhân học sinh.. Chính vì vậy cần phải có hai thủ tục nhập điểm.Khả năng gợi động cơ ở nội dung đó hoặc hoạt động đó. Trong một tiết học. Cũng cần lưu ý rằng. . việc gợi động cơ cần tập trung vào một số nội dung hoặc hoạt động nhất định mà việc quyết định cần căn cứ vào những yếu tố sau đây: . Đây là một chương trình tính điểm mà học sinh có thể ứng dụng ngay trong thực tế học tập của mình. Sinh viên thực hiện: Đỗ Trung Thành. tức là các điểm nhập vào cần phải xử lý theo xâu ký tự sau đó đổi sang số để tính toán.. còn có những khả năng gợi động cơ không gắn với nội dung như khen. Chẳng hạn. điểm hệ số 1 và hệ số 2 là các số nguyên với số lần điểm nhập vào không hạn chế. chê.

ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. If (c2 <> 0) Or (a2 > 10) Or (a2<0) Then Writeln('Nhap lai!'). t: Char. Trong công việc tính toán. End. h3: String. ta sử dụng hàm Tinh để tính điểm trung bình môn theo các hàm tính tổng và hàm đếm đã thực hiện như trên. st1[i+1]:=t. + Trường hợp điểm từ 0 đến 9: Đếm bình thường và việc tính tổng cũng vậy.t1. Procedure Nhap1(Var st1: String. End. Trang 33 . Begin Repeat Write('Nhap diem he so '. Until (c1 = 0) And (a1>=0). t2: Byte). Val(st2. đến số 0 thì tính từ đó. c2). Writeln('Diem ban nhap se la: '. Cuối cùng. Var c2:Integer.': '). hs3: Real. Readln(st2). hs2 . Sinh viên thực hiện: Đỗ Trung Thành. Var a1. st1[i] := st1[i+1]. Chương trình như sau: Var hs1. tam: Integer. If (c1 <> 0) Or (a1<0) Then Writeln('Nhap lai!'). t1: Byte).t2. nếu là các điểm từ 0 đến 9 vấn đề rất đơn giản. k: Integer. Val(st1. có điều để tính tổng các phần tử chúng ta cần sử dụng một vòng For duyệt toàn bộ các phần tử của xâu. nhưng khi có điểm 10 việc đếm số lần điểm cũng như là việc tính tổng các điểm cần phải chia ra thành hai trường hợp: + Trường hợp có điểm 10: Ta xử lí hàm đếm bằng cách nếu gặp ký tự 1 và 0 thì đếm giữ nguyên. Readln(st1). a2: Real. End. chúng ta cũng cần phải có hai hàm: hàm tính tổng các điểm và hàm đếm số lần điểm của mỗi loại điểm. If ch='y' then Begin t:=st1[i]. a2.st1) End. Procedure Nhap2(Var st2:String. gặp điểm 10 sẽ chỉ đếm là 1. với mỗi ký tự ta lại dùng hàm Val để đổi ký tự đó sang số để tính toán.': '). c1). a1. Readln(ch). i. Như vậy. Begin Repeat Write('Nhap diem he so '. nhất hai trường hợp điểm 10 và điểm 0 nên chúng ta có thể sử dụng một biến Char để xác định rõ điểm 10 vừa nhập là điểm 10 hay là hai điểm 0 và 1. ch: Char. c1. For i:=1 to Length(st1) do Begin If (st1[i] = '1') And (st1[i+1] = '0') Then Begin Write('Diem 10 o tren la diem 1 va diem 0(y)hay diem 10(n):').

hs2. hs3. Writeln('Diem he so 1: '. End. Nhap2(h3. End. l : Integer. End. s. c). c : Integer. Writeln('Diem he so 2: '. x: String. Nhap1(hs1. Nhap1(hs2. End. k). Until (c2 = 0) and (a2 <= 10) And (a2>=0). c). For i := 1 to Length(a) Do Begin If (a[i] = '1') And (a[i+1] = '0') Then Begin Val(a[i] + a[i+1].ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai.1). Writeln('Diem he so 3: '. d. For i := 1 to Length(a) Do Begin If (a[i] = '1') And (a[i+1] = '0') Then l := l Else l := l + 1.hs1). d. s := s + d. Begin l := 0. End Else Begin Val(a[i]. y: String.hs2). Tong := s. Sinh viên thực hiện: Đỗ Trung Thành. Trang 34 . x:String. z: Real): Real. Begin Writeln('CHUONG TRINH TINH DIEM TRUNG BINH MON'). Function Dem(a : String): Integer.hs3):0:1). Function Tinh(x.2). End.h3). End. Var i. End. Writeln('Ket qua TBm : '. Begin Val(h3. Var i. Function Tong(a : String):Integer. Begin s := 0. Dem := l.Tinh(hs1. s := s + d. Tinh:=(Tong(hs1) + Tong(hs2)*2 + hs3*3)/(Dem(hs1) + Dem(hs2)*2 + 3). d.3).

Readln End.ĐỀ TÀI: GỢI ĐỘNG CƠ HOẠT ĐỘNG TRONG VIỆC GIẢNG DẠY CHƯƠNG TRÌNH CON Giáo viên hướng dẫn: Đào Tố Mai. Sinh viên thực hiện: Đỗ Trung Thành. Trang 35 .

Sign up to vote on this title
UsefulNot useful