SKKN Giải pháp giúp học sinh lớp 11 trường THPT Cẩm Thủy 1 nắm vững kiến thức chương II - Tin học 11
Đứng trước yêu cầu đổi mới căn bản và toàn diện GD&ĐT, hướng đến đào tạo nguồn nhân lực trí thức đáp ứng yêu cầu của xã hội hiện đại. Việc đổi mới phương pháp dạy học, đổi mới kiểm tra, đánh giá trong giáo dục phổ thông là vô cùng quan trọng và cần thiết. Mục tiêu giáo dục xã hội đang đặt ra những yêu cầu cấp thiết đòi hỏi bản thân mỗi giáo viên phải không ngừng học hỏi và sáng tạo để nâng cao chất lượng dạy học.
Qua quá trình công tác và thực tiễn giảng dạy bộ môn tin học tại trường THPT Cẩm Thủy 1, tôi nhận thấy đa số học sinh khối 11 hằng năm có điểm tổng kết môn tin học rất thấp, thậm chí ngay ở cả các lớp mũi nhọn. Nhiều em rất lúng túng khi giáo viên yêu cầu viết một chương trình hoàn chỉnh bằng ngôn ngữ Pascal (mặc dù rất đơn giản).
Một trong những lý do dẫn đến hiện tượng này là do các em không nắm vững kiến thức về chương trình. Vì khi viết chương trình các em cần phải tuân thủ nghiêm ngặt quy tắc viết câu lệnh, chính xác đến từng dấu chấm, dấu phẩy nên càng không thể học vẹt, học thuộc lòng để kiểm tra và để thi. Do đó nếu các em hiểu một cách mơ hồ, không chắc chắn kiến thức chương II thì càng về sau các em sẽ càng học càng cảm thấy rối rắm, dẫn đến hiện tượng chán học, học đối phó, kết quả học tập không cao, ảnh hưởng không nhỏ đến chất lượng giáo dục của nhà trường.
PHẦN 1. PHẦN MỞ ĐẦU Lý do chọn đề tài Đứng trước yêu cầu đổi mới căn bản và toàn diện GD&ĐT, hướng đến đào tạo nguồn nhân lực trí thức đáp ứng yêu cầu của xã hội hiện đại. Việc đổi mới phương pháp dạy học, đổi mới kiểm tra, đánh giá trong giáo dục phổ thông là vô cùng quan trọng và cần thiết. Mục tiêu giáo dục xã hội đang đặt ra những yêu cầu cấp thiết đòi hỏi bản thân mỗi giáo viên phải không ngừng học hỏi và sáng tạo để nâng cao chất lượng dạy học. Qua quá trình công tác và thực tiễn giảng dạy bộ môn tin học tại trường THPT Cẩm Thủy 1, tôi nhận thấy đa số học sinh khối 11 hằng năm có điểm tổng kết môn tin học rất thấp, thậm chí ngay ở cả các lớp mũi nhọn. Nhiều em rất lúng túng khi giáo viên yêu cầu viết một chương trình hoàn chỉnh bằng ngôn ngữ Pascal (mặc dù rất đơn giản). Một trong những lý do dẫn đến hiện tượng này là do các em không nắm vững kiến thức về chương trình. Vì khi viết chương trình các em cần phải tuân thủ nghiêm ngặt quy tắc viết câu lệnh, chính xác đến từng dấu chấm, dấu phẩy nên càng không thể học vẹt, học thuộc lòng để kiểm tra và để thi. Do đó nếu các em hiểu một cách mơ hồ, không chắc chắn kiến thức chương II thì càng về sau các em sẽ càng học càng cảm thấy rối rắm, dẫn đến hiện tượng chán học, học đối phó, kết quả học tập không cao, ảnh hưởng không nhỏ đến chất lượng giáo dục của nhà trường. Thiết nghĩ: “Làm thế nào để giúp các em dễ dàng nắm vững và tự tin trước yêu cầu viết một chương trình đơn giản bằng ngôn ngữ lập trình Pascal? Cần phải làm sao để các em thấy được sự kỳ diệu của tin học 11, để từ chỗ “sợ” lập trình chuyển thành ham thích lập trình”. Điều đó đã thôi thúc tôi quyết tâm đi sâu và nghiên cứu đề tài: “Giải pháp giúp học sinh lớp 11 trường THPT Cẩm Thủy 1 nắm vững kiến thức chương II - Tin học 11” Hy vọng đề tài này của tôi sẽ là một tài liệu tham khảo giúp các bạn đồng nghiệp có thể áp dụng không chỉ cho HS của riêng trường THPT Cẩm Thủy 1 mà còn có thể áp dụng rộng rãi cho nhiểu trường THPT khác có cùng điều kiện về cơ sở vật chất và con người. Mục đích nghiên cứu Nâng cao nghiệp vụ công tác của bản thân, trao đổi kinh nghiệm với đồng nghiệp. Góp phần nâng cao chất lượng dạy và học. Làm nền tảng vững chắc để HS tự tin viết các chương trình đơn giản, từ đó các em cảm thấy thích thú và kích thích các em tìm tòi để viết các chương trình phức tạp hơn. Đối tượng nghiên cứu Chương trình Tin học 11 Học sinh lớp 11 trường THPT Cẩm Thủy 1 Phương pháp dạy học môn tin 11 Phương pháp nghiên cứu Phương pháp điều tra khảo sát thực tế, thu thập thông tin. Tìm hiểu chất lượng học tập môn tin học khối 11 qua các năm gần đây. Khảo sát chất lượng đầu năm học để có kế hoạch dạy học phù hợp nhất với từng nhóm lớp. Trao đổi, tâm sự với HS để tìm nguyên nhân tại sao các em có tâm lý sợ viết chương trình, động viên và tìm cách để các em dễ dàng đón nhận kiến thức một cách tôt nhất. Phương pháp nghiên cứu xây dựng cơ sở lý thuyết Nghiên cứu kỹ chuẩn kiến thức và kỹ năng của mỗi bài dạy, cũng như của mỗi chương kiến thức. Căn cứ vào phân phối chương trình và nội dung kiến thức trên mỗi chương để lên kế hoạch dạy học phù hợp, xây dựng thiết kế nội dung bài dạy đảm bảo tiết kiệm thời gian và công sức nhưng vẫn cho hiệu quả cao. Tổng hợp, thống kê, đối chiếu Tổng hợp và thống kê chất lượng bộ môn trước và sau khi áp dụng đề tài. Đối chiếu kết quả để thấy được hiệu quả và dự đoán mức độ lan tỏa của đề tài. PHẦN 2. NỘI DUNG 2.1. Cơ sở lí luận 2.1.1 Một số khái niệm cơ bản Như ta đã biết, mọi bài toán có thuật toán đều có thể giải được trên máy tính điện tử. Thuật toán là một dãy hữu hạn các thao tác, được sắp xếp theo một trình tự xác định sao cho sau khi thực hiện dãy thao tác ấy từ các thông tin ban đầu ta có thể thu được kết quả cần tìm (KN thuật toán, SGK tin 10). Khi giải bài toán trên máy tính điện tử, sau bước xác định bài toán và xây dựng hoặc lựa chọn thuật tóan khả thi chính là bước viết chương trình (lập trình). Lập trình là sử dụng cấu trúc dữ liệu và các câu lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán. (SGK 11, trang 4) Khi được phân công dạy chương trình 11 thì ngôn ngữ lập trình được tôi và các đồng nghiệp lựa chọn là ngôn ngữ pascal. Sở dĩ như vậy vì Pascal giúp cho HS- những người mới lập trình có thể dễ dàng nắm bắt được việc viết một chương trình có cấu trúc sáng sủa, rõ ràng và dễ học. (Học nhanh Pascal trong 15h, Cao Bá Thành, trang 6) Ngôn ngữ Pascal được xây dựng trên cơ sở một bộ các chữ cái trong bảng chữ cái tiếng Anh, một bộ các chữ số thập phân Ả Rập (0, 1,2,3,4,5,6,7,8,9) và bộ các kí hiệu đặc biệt: + - * / = < > [ ] . , ; # ^ $ @ & ( ) { } : ’ Dấu cách (Mã ASCII 32) Dấu gạch dưới _ Ngoài ra khi học lập trình chúng ta còn phải quan tâm đến bộ quy tắc để viết chương trình hay còn gọi là cú pháp; quan tâm đến ngữ nghĩa (xác định ý nghĩa thao tác cần phải thực hiện); 2.1.2 Một số quy ước - Khi diễn giải cú pháp của ngôn ngữ lập trình người ta diễn giải bằng ngôn ngữ tự nhiên. - Các diễn giải bằng ngôn ngữ tự nhiên được đặt giữa cặp dấu ; - Các thành phần của chương trình có thể có hoặc không được đặt trong cặp dấu ngoặc [ và ] - Với các từ được đặt trong cặp dấu nháy đơn ’ và’ là những từ tự do ta không cần thiết phải theo quy luật, có thể viết theo ý mình. 2.1.3 Chuẩn kiến thức, kỹ năng của chương II – chương trình đơn giản. a) Về kiến thức: HS nhớ được cấu trúc chung, các thành phần của một chương trình viết trên ngôn ngữ Pascal. Nắm được cách khai báo hằng, biến và cách tạo ra biểu thức. Biết cách sử dụng câu lệnh gán và các lệnh vào/ra cơ bản. Nhớ một số kiểu dữ liệu chuẩn (gồm tên, phạm vi giá trị và kích thước trong bộ nhớ) b) Về kỹ năng: Biết khai báo biến đơn; biết viết đúng các biểu thức đơn giản Biết soạn thảo, dịch và thực hiện một số chương trình mẫu trong SGK c) Về tư tưởng, tình cảm: Xác định thái độ nghiêm túc trong học tập khi làm quen với nhiều quy định nghiêm ngặt trong lập trình. Có ý thức cố gắng trong học tập, khắc phục các khó khăn, lúng túng trong giai đoạn bắt đầu lập trình. Tạo sự say mê giải các bài toán bằng cách lập trình. Thấy được lợi ích của lập trình trước hết là để tính toán và để giải được các bài toán đã nêu trong nội dung của chương. 2.2. Thực trạng vấn đề trước khi thực hiện đề tài nghiên cứu Vài nét về nhà trường, học sinh và bộ môn Tin học Trường THPT Cẩm Thủy 1 là một ngôi trường thuộc khu vực miền núi của tỉnh Thanh Hóa. Năm 2016-2017 nhà trường có 36 lớp với 1482 học sinh, đa số các em là người dân tộc thiểu số, hầu hết các em đều chăm ngoan. Tuy nhiên điều kiện gia đình còn nhiều khó khăn, nên việc đầu tư cho con em học tập còn phụ thuộc nhiều yếu tố, chất lượng đầu vào chưa cao. Được sự quan tâm của Nhà nước cũng như của ngành giáo dục, nhà trường cũng đã được đầu tư xây dựng nhiều phòng học khang trang, trong đó có hai phòng máy dành cho việc thực hành của bộ môn tin học (mỗi phòng có 24 máy, không có máy chiếu để lắp riêng cho phòng tin, muốn dạy máy chiếu GV phải đăng ký trước 1tuần để được dạy tại phòng đa năng- phòng dùng chung cho các môn). Tuy nhiên do các năm trước nguồn điện không ổn định, theo thời gian quá trình hao mòn máy móc đã làm cho nhiều máy bị hỏng, mặc dù đã hết sức khắc phục nhưng nhiều khi vẫn có tới 6-7 máy không thể hoạt động được, số lượng học sinh trên lớp đông vì vậy việc đảm bảo cho 2 HS ngồi thực hành chung một máy nhiều khi cũng chưa đáp ứng đủ. Thêm vào đó là tâm lý coi trọng các môn thi THPTQG và học đối phó với các môn còn lại của đại bộ phận học sinh. Điều đó đã ảnh hưởng không nhỏ tới chất lượng dạy và học môn tin học. 2.2.2.Thực trạng vấn đề trước khi thực hiện đề tài Với số lớp đông, giáo viên tin học lại chỉ có 3 người nên số giờ dạy trên tuần nhiều (khoảng 20 tiết/ tuần, chưa kể dạy nghề), quỹ thời gian đầu tư cho nghiên cứu tài liệu ít. Cộng thêm tuổi nghề còn trẻ, kinh nghiệm chưa nhiều, là nguyên nhân dẫn đến những hạn chế trong công tác giảng dạy, trong trao đổi kinh nghiệm và nghiên cứu khoa học. Khi được phân công giảng dạy chương trình tin học 11 qua các năm tôi nhận thấy các em đều có tâm lý “sợ” lập trình. Thậm chí không chỉ mình các HS tốp dưới mà ngay cả các học sinh lớp mũi nhọn nhiều em cũng lúng túng không biết phải bắt đầu từ đâu trước yêu cầu lập trình một bài toán đơn giản (ví dụ như nhập 2 cạnh của hình chữ nhật và tính chu vi, diện tích hình chữ nhật đó). Việc không nắm vững được phần cấu trúc chương trình tựa như các em làm một bài văn mà không có “dàn ý”. Lập tức các em sẽ sắp xếp ý lộn xộn, hoặc triển khai không hết ý. Một trong các lý do các em lúng túng trước yêu cầu viết một chương trình đó chính là các em nắm kiến thức về chương trình (mà cốt lõi là cấu trúc của nó) một cách mơ hồ, không chắc chắn. Thể hiện ở việc: Tồn tại một mâu thuẫn: Khi học lý thuyết từng câu lệnh riêng lẻ thì các em có thể tiếp thu được nhưng khi yêu cầu viết một chương trình hoàn chỉnh thì các em lại không làm nổi. Sau khi học xong chương II rất ít trong số các em làm chính xác một bài tập dạng sắp xếp lại các câu lệnh đã cho để được một chương trình hoàn chỉnh; Khi các em viết một chương trình có thể có câu lệnh kiểm tra điều kiện, có câu lệnh gán giá trị nhưng lại bỏ qua mất câu lệnh nhập dữ liệu cho biến; Nhiều học sinh học kém môn toán và tiếng Anh tự cho là mình không thể tiếp thu được ngay từ bài đầu tiên của chương II và tạo ra một tâm lý “sợ” học lập trình. Do vậy nếu không sớm tìm cách giải quyết, khắc phục sẽ làm các em cảm thấy chán vì không thể làm được bài tập, không có cảm hứng để chinh phục và khám phá các phần kiến thức tiếp theo. Dẫn tới kết quả học tập bộ môn ngày càng đi xuống. Các giải pháp đã sử dụng để giải quyết vấn đề . Để giải quyết thực trạng nêu trên tôi đã xây dựng 4 giải pháp sau đây: a) Nghiên cứu tài liệu - Đây là bước hết sức quan trọng vì nếu nghiên cứu kỹ hoặc chịu khó tham khảo các tài liệu liên quan đến nội dung của mảng kiến thức mà giáo viên cần trình bày sẽ giúp giáo viên định hướng và sáng tạo ra cách thức để trình bày vấn đề đó một cách tốt nhất. Ví dụ: Trước một bài dạy nào đó nếu giáo viên đầu tư thời gian để nghiên cứu chuẩn kiến thức, kỹ năng cần đạt; tham khảo các bài giảng của đồng nghiệp sẽ giúp giáo viên định hình và xây dựng giáo án lên lớp một cách hợp lí nhất, đảm bảo đủ kiến thức, tiết kiệm thời gian, tránh lan man, dài dòng. b) Thực hiện dự giờ và thao giảng - Dự giờ sẽ giúp giáo viên rút ra được nhiều kinh nghiệm từ bài giảng của đồng nghiệp, học hỏi những cách làm hay và mới. - Thao giảng sẽ giúp giáo viên và học sinh chuẩn bị bài chu đáo. Hạn chế được tình trạng dạy chay hoặc đọc – chép. c) Luôn quan tâm, sát sao đến từng học sinh, đặc biệt là công tác tư tưởng, nêu gương, động viên, khích lệ học trò. - Theo tôi đây là những việc làm rất quan trọng, nó có tác dụng định hướng về mục đích học tập, tránh những hiểu biết sai lệch của học sinh về các nội dung kiến thức mà giáo viên đã truyền đạt, tháo gỡ kịp thời các vướng mắc mà các em gặp phải. - Nêu gương, khích lệ, động viên sẽ là các hình thức giúp các em ý thức được mình cần phải làm gì để vượt qua khó khăn để đạt được mục đích cuối cùng và xa hơn là định hướng ngành nghề tương lai cho học sinh. Ví dụ 1: Vào thời điểm kết thúc chương trình lớp 10 hoặc ngay từ bài đầu tiên của chương trình lớp 11 tôi luôn dành ra một khoảng thời gian để trao đổi, thông báo trước với học trò về độ khó của chương trình lớp 11 so với chương trình lớp10, về sự logic các kiến thức của bài học trước và bài học sau, về sự chính xác đến từng dấu chấm, dấu phẩy các em phải chuẩn bị tâm thế học tập thật nghiêm túc, ghi bài và trình bày kiến thức một cách thật cẩn thận mới có thể hiểu bài và làm được các bài tập trong sách giáo khoa. Thêm vào đó trong quá trình dạy học tôi thường xuyên kiểm tra và theo dõi việc ghi chép bài của học sinh. Cách làm này tránh được hiện tượng học sinh ghi chép bài không cẩn thận dẫn đến sai lệch nội dung kiến thức mà giáo viên cần truyền đạt, rèn luyện tính kiên trì, cẩn thận của người lập trình. Ví dụ 2: Khi một học sinh nào đó đã viết được một chương trình hoàn chỉnh ở mức độ vận dụng thấp, ta nên động viên học sinh đó tiếp tục viết một chương trình ở mức độ cao hơn và đừng quên chuẩn bị một món quà nhỏ để khen ngợi, động viên em và khích lệ các học sinh khác cố gắng để làm được như bạn.. Nếu học sinh đó vẫn tiếp tục giải quyết được thì tự bản thân học sinh sẽ cảm thấy hào hứng, có nhu cầu để tìm tòi, khai thác tiếp các nội dung kiến thức khó hơn. Ví dụ 3: Để làm cho các em thêm yêu thích lập trình, hướng các em đang nuôi dưỡng ước mơ muốn trở thành những người lập trình viên chuyên nghiệp, có thu nhập cao, tôi đã dành chút thời gian để kể cho các em nghe về tấm gương của hai học sinh vừa tốt nghiệp cách đây không lâu là Hoàng Vũ, Nguyễn Hồng Sơn. Hai em đã từng cố gắng học tốt môn này, sau đó được chọn vào đội tuyển tin học để dự thi cấp tỉnh, mặc dù chưa đạt giải nhưng vẫn quyết tâm khi thi đỗ vào trường học viện công nghệ bưu chính viễn thông, cả hai anh đã giành được giải khuyến khích và giải tiềm năng khi tham dự cuộc thi lập trình viên quốc tế ACM năm 2017. Đây cũng là một hình thức tuy đơn giản nhưng lại có tác dụng nuôi dưỡng ước mơ của các học sinh, thổi niềm đam mê lập trình vào các em để các em noi gương và quyết tâm học tập tốt để khẳng định bản thân và biến ước mơ thành hiện thực. Ví dụ 4. Khi phát hiện ra một vài học sinh có tố chất, thông minh, nhanh nhẹn ta nên chọn các em vào đội tuyển, bồi dưỡng thêm để các em có cơ hội phát triển. Khi đó chính các em sẽ là những người có khả năng thay chúng ta giúp đỡ các học sinh khác học kém hơn trong lớp. Mặt khác bản thân các em có một nền tẳng vững chắc về các thuật toán, về sử dụng một ngôn ngữ lập trình để diễn tả thuật toán, nếu sau này các em có thi đỗ vào một ngành nghề nào đó thuộc lĩnh vực Công nghệ thông tin thì đấy chính là một lợi thế. d) Mạnh dạn trình bày và sắp xếp lại các nội dung kiến thức của SGK theo một hình thức khác (trình bày dưới dạng bảng biểu tổng hợp nhưng ngắn gọn, dễ nhớ). * Mục đích: Làm cho học sinh tiếp cận cùng một nội dung kiến thức nhưng theo một hình thức trình bày dễ hiểu và dễ nhớ hơn, gọn gàng hơn nhưng vẫn đảm bảo đủ nội dung theo chuẩn kiến thức kỹ năng. Ví dụ 1: Khi dạy Bài 3: “Cấu trúc chương trình” thay vì trình bày theo các mục như SGK thì ngay từ đầu tôi đã xây dựng các kiến thức đó dưới dạng bảng biểu, (chưa yêu cầu HS hiểu ngay mà chỉ yêu cầu HS nhớ), bảng này sẽ được tôi sử dụng liên tục trong các bài dạy của chương II dùng làm dàn ý để dựa vào đó các em triển khai các kiến thức liên quan tiếp theo, sau vài lần các em sẽ thuộc và giải quyết tốt các bài tập dạng sắp xếp lại các câu lệnh đã cho để được một chương trình hoàn chỉnh. Cụ thể bảng biểu mà tôi xây dựng như sau: Thành phần Cú pháp tương ứng Chú ý Phần khai báo Khai báo tên CT; Program Tên_CT; Uses Tên thư viện; Const Tên hằng = giá trị hằng; Var Danh sách biến: Kiểu dữ liệu; (sẽ học cụ thể hơn ở bài sau) (sẽ học sau) Begin Lệnh 1; Lệnh 2; End. - Khi viết chương trình phải tuân thủ thứ tự của các thành phần. - Trong trường hợp viết chương trình không cần dùng đến phần nào ta mới được phép bỏ qua phần đấy để chuyển tới phần tiếp theo. Khai báo thư viện; Khai báo hằng; Khai báo biến; Khai báo chương trình con; Phần thân -Bắt đầu bằng từ khóa BEGIN -Kết thúc bằng từ khóa END. -Ở giữa là dãy các lệnh được phân cách nhau bởi 1 dấu ; Trong bảng biểu này tôi trình bày luôn cú pháp khai báo biến mà không đợi đến khi dạy bài 5 mới trình bày như SGK. Vì theo tôi chỉ cần cho các em biết cách khai báo biến theo kiểu trực tiếp là đủ, phần khai báo gián tiếp để sang phần mảng một chiều dạy sau. Dễ nhận thấy rằng các diễn giải bằng ngôn ngữ tự nhiên được đặt giữa cặp dấu ; Hoặc các thành phần của chương trình có thể có hoặc không được đặt trong cặp dấu ngoặc [ và ] đều bị tôi cắt đi. Sở dĩ tôi cắt đi vì theo tôi thấy học sinh sẽ có cảm giác rườm rà, khó nhớ hơn và khi lấy ví dụ minh họa cho cú pháp các em không phải thắc mắc rằng : Tại sao trong cú pháp thì có dấu còn ví dụ minh họa lại bỏ đi không viết nữa. Ví dụ 2: Khi dạy nội dung của “Bài 4: Một số kiểu dữ liệu chuẩn” tôi cũng tiến hành tương tự và kèm theo luôn các phép toán sử dụng trên từng kiểu dữ liệu chuẩn. Sau đó mới lưu ý về độ ưu tiên của các phép toán. Kiểu Tên kiểu Phạm vi giá trị Số byte Các phép toán trên mỗi kiểu Kiểu nguyên Byte 0 đến 255 1 +, - , *, div, mod, =, , >, >= Trong đó: div: Chia lấy phần nguyên mod: Chia lấy phần dư Word 0 đến 65 535 2 Integer -32 768 đến 32767 2 Longint -2 147483648 đến 2 147483648 4 Kiểu thực Real 0 hoặc có giá trị tuyệt đối từ 2,9x 10-39 đến 2,9x 1038 6 +, -, *, / =, , >, >= Extended 0 hoặc có giá trị tuyệt đối từ 10-4932 đến 104932 10 Kiểu kí tự Char True hoặc false 1 Dùng các hàm để xử lý (học sau) Kiểu logic Boolean 256 kí tự bộ mã ASCII 1 Not, and, or, e) Lấy ví dụ minh họa không nhất thiết phải giống SGK mà chỉ cần đảm bảo đảm bảo phù hợp với trình độ nhận thức chung của lớp đó. * Mục đích: Học tới đâu hiểu tới đó, đi từ mức độ nhận dạng đến mức độ vận dụng, giúp học sinh ghi nhớ lý thuyết và biết vận dụng lý thuyết để làm bài tập. Từ đó khắc sâu kiến thức đã học. Ví dụ 1: Sau khi dạy cấu trúc chương trình như bảng biểu tại ví dụ 1, tôi tiến hành lấy ví dụ (có thể chiếu hoặc thiết kế trên bảng phụ) như sau: Program Vi_du_CT; Uses Crt; Var a,b,t: Byte; Begin Clrscr; Writeln(’Moi nhap hai so a va b ’) ; Readln (a, b); T:=a+b; Write(’tong hai so la: ’); Write(t); End. Yêu cầu học sinh trả lời các câu hỏi: Cho biết chương trình trên có đủ cả phần khai báo và phần thân không? Nếu có thì khai báo những gì? Dấu hiệu nhận biết các phần? Trong phần thân chương trình có mấy câu lệnh? HS hoàn toàn có thể dựa vào bảng biểu mà tôi đưa ra để trả lời: Chương trình trên có đủ cả 2 phần khai báo và phần thân. Dấu hiệu nhận biết các phần như sau: + Phần khai báo: từ đầu đến trước từ begin. Cụ thể: khai báo tên chương trình là Vi_du_CT; (dấu hiệu có từ Program) khai báo thư viện có tên là CRT (dấu hiệu có từ Uses); không có khai báo hằng. khai báo 3 biến a,b,t (dấu hiệu có từ Var) +Phần thân từ từ begin đến hết Trong phần thân chương trình có 5 câu lệnh. Ví dụ 2: Sau khi dạy cú pháp khai báo biến và các kiểu dữ liệu chuẩn cho học sinh nhận dạng các thành phần qua ví dụ sau đây: Var a,b,to,ti: integer; x,y:real; Yêu cầu học sinh trả lời các câu hỏi lần lượt theo cấp độ từ dễ đến khó: 1 - Cho biết ví dụ trên khai báo bao nhiêu biến? tên các biến là gì? Kiểu dữ liệu của chúng ra sao? HS dễ dàng nhận ra ví dụ trên khai báo 6 biến có tên là a,b,to,ti,x,y Trong đó các biến: a,b,to, ti là các số nguyên trong phạm vi giá trị của kiểu integer; các biến x,y là các số thực trong phạm vi giá trị của kiểu real. 2 – Giả sử cần khai báo 2 biến m, n mỗi số là số nguyên dương không có độ lớn không vượt quá 200 thì ta nên khai báo thế nào để tốn ít bộ nhớ nhất? Viết khai báo cụ thể. HS dễ dàng nhận ra với độ lớn không vượt quá 200 thì m và n cần khai báo kiểu byte là hợp lý nhất. HS viết được Var m,n: byte; – Nếu cần khai báo thêm 2 biến u (là tích của m và n) và v (là thương của m cho n) thì ta cần khai báo thế nào? Tại sao? Câu hỏi này không phải HS nào cũng trả lời được bởi vì nó đang ở mức độ vận dụng cao hơn. Các học sinh tư duy tốt hơn sẽ trả lời được nhờ việc phân tích độ lớn của tích (không quá 40 000) và giá trị của thương (có thể là số thực, nên các em cũng có thể làm đúng kết quả là: Var m,n: byte; U: word; v: real; f) Tận dụng tối đa phòng thực hành để học sinh được kiểm định kết quả của các chương trình mẫu. * Mục đích: Nhằm để các em thấy được sự kỳ diệu của tin học 11, các em được kiểm định kết quả chương trình mẫu, biết sửa lỗi và chạy một chương trình. Từ đó thấy được việc viết chương trình để giải một bài toán tin học là hết sức thú vị. Rèn luyện tính kiên trì, cẩn thận cho các em. 2.4 Hiệ
Tài liệu đính kèm:
- skkn_giai_phap_giup_hoc_sinh_lop_11_truong_thpt_cam_thuy_1_n.doc
- bia skkn.doc
- MỤC LỤC.doc