Một số phương pháp rèn luyện tư duy lập trình pascal cho học sinh qua các dạng bài tập kiểu xâu

21 898 0
Một số phương pháp rèn luyện tư duy lập trình pascal cho học sinh qua các dạng bài tập kiểu xâu

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

SỞ GIÁO DỤC VÀ ĐÀO TẠO THANH HÓA TRƯỜNG THPT TRẦN PHÚ NGA SƠN *** SÁNG KIẾN KINH NGHIỆM MỘT SỐ PHƯƠNG PHÁP RÈN LUYỆN TƯ DUY LẬP TRÌNH PASCAL CHO HỌC SINH QUA CÁC DẠNG BÀI TẬP KIỂU XÂU Họ tên: Phạm Thị Nhung Chức vụ: Giáo viên SKKN thuộc môn: Tin học THANH HÓA NĂM 2017 MỤC LỤC MỞ ĐẦU 1.1 LÍ DO CHỌN ĐỀ TÀI 1.2 MỤC ĐÍCH NGHIÊN CỨU 1.3 ĐỐI TƯỢNG NGHIÊN CỨU 1.4 PHƯƠNG PHÁP NGHIÊN CỨU NỘI DUNG SÁNG KIẾN KINH NGHIỆM .3 2.1 CƠ SỞ LÝ LUẬN CỦA SÁNG KIẾN KINH NGHIỆM .3 2.2 THỰC TRẠNG CỦA VẤN ĐỀ 2.3 CÁC GIẢI PHÁP ĐÃ SỬ DỤNG ĐỂ GIẢI QUYẾT VẤN ĐỀ 2.3.1 Chính xác hóa nhận thức học sinh “Kiểu xâu” 2.3.2 Khắc phục sai lầm học sinh lập trình kiểu xâu 2.3.3 Rèn luyện kỹ cho học sinh qua số tập đặc trưng 2.4 HIỆU QUẢ CỦA SÁNG KIẾN KINH NGHIỆM 18 KẾT LUẬN VÀ KIẾN NGHỊ 19 MỞ ĐẦU 1.1 LÍ DO CHỌN ĐỀ TÀI Cùng với trình Tin học hóa nhiều lĩnh vực hoạt động xã hội loài người đem lại nhiều hiệu to lớn việc đưa môn Tin học vào giảng dạy trường trung học phổ thông đẩy mạnh không tầm quan trọng Môn Tin học đưa vào giảng dạy trường phổ thông môn học khác năm 2006-2007 Nhận thức tầm quan trọng, ảnh hưởng to lớn môn Tin học nói riêng lĩnh vực công nghệ thông tin nói chung lĩnh vực khác phát triển xã hội Tôi nghĩ thân giáo viên dạy môn Tin học phải có trách nhiệm cho học sinh hiểu yêu thích môn này, tạo cho học sinh hứng khởi, niềm đam mê học hỏi, sáng tạo để phát triển ngành Tin học ngày cao hơn, xa hơn, mang lại nhiều ứng dụng thiết thực Trong trình giảng dạy, nghĩ tìm nhiều toán khó, toán hay để giảng dạy cho học sinh Mà vấn đề đặt cần phải tích cực tìm tòi, sáng tạo việc đưa cách giải toán để giúp cho học sinh có hứng thú, tìm tòi sáng tạo trình giải học tập, từ biết vận dụng linh hoạt tình cụ thể thực tế Để thực điều đó, theo cần phải tìm tòi, nghiên cứu tìm toán phù hợp, kích thích độc lập, tích cực học sinh học tập Trên sở đó, học sinh tự tìm ý tưởng sáng tạo vận dụng thiết thực vào sống thực tế nhu cầu nảy sinh, em tự hoàn thành ý tưởng Trong vấn đề Tin học đưa vào giảng dạy chương trình bậc học phổ thông Khi nói đến vấn đề dạy học lập trình pascal cho học sinh, kiểu liệu chuẩn không đủ biểu diễn liệu toán thực tế Các ngôn ngữ lập trình có quy tắc, cách thức cho phép người lập trình xây dựng kiểu liệu phức tạp từ kiểu có Một số kiểu xâu kiểu liệu có cấu trúc, liệu kiểu phi số - dạng kí tự; Là kiểu liệu không phần quan trọng lập trình Pascal Vấn đề đặt là: Dạy học sinh kiểu xâu để đạt hiệu quả? Đó lí định chọn đề tài: “Một số phương pháp rèn luyện tư lập trình Pascal cho học sinh qua dạng tập kiểu xâu” 1.2 MỤC ĐÍCH NGHIÊN CỨU - Giúp học sinh có nhìn đắn lập trình tự tin hơn, chủ động giải tập kiểu xâu cách hiệu để hoàn thành chương trình cách tốt 1.3 ĐỐI TƯỢNG NGHIÊN CỨU - Học sinh khối 11 Trường THPT Trần Phú đặc biệt đối tượng học sinh ôn luyện học sinh giỏi 1.4 PHƯƠNG PHÁP NGHIÊN CỨU - Thực tiễn giảng dạy học sinh khối 11; - Tham khảo SGK, SGV Tin học 11 tài liệu ngôn ngữ lập trình Pascal; NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 CƠ SỞ LÝ LUẬN CỦA SÁNG KIẾN KINH NGHIỆM Bản thân giáo viên giảng dạy môn Tin học trường THPT Trần Phú, Với chất lượng học sinh đầu vào thấp, dạy học sinh lập trình Pascal, đặc biệt toán “Kiểu xâu”, truyền thụ kiến thức cách đơn phần đông em không nắm rõ kiến thức “Kiểu xâu”, cách sử dụng kiểu xâu khả vận dụng linh hoạt toán “Kiểu xâu” vào thực tiễn Đa số em hiểu cách thụ động tính tư duy, sáng tạo việc xây dựng hình thành thuật toán cho toán cụ thể dẫn đến sai lầm lập trình Khi trình bày vấn đề cho học sinh, thực sau: Trước hết, nhắc lại số điểm quan trọng kiểu xâu; sau sai lầm mà em hay mắc phải số dạng tập Đồng thời đưa cách khắc phục sai lầm Chỉ cách tiếp cận khác toán cụ thể để nâng cao khả tư cho em Sau cho em số tập tự rèn luyện kỹ Đặc biệt, toán “Kiểu xâu” ứng dụng để giải vấn đề thực tiễn Làm thấy có hiệu Học sinh hiểu rõ chất toán cụ thể, em dễ dàng tiếp cận yêu cầu khó khăn toán khác Đó để viết đề tài 2.2 THỰC TRẠNG CỦA VẤN ĐỀ Thực tế số đông giáo viên chưa từ bỏ kiểu dạy học truyền thống giáo viên biết say sưa truyền thụ kiến thức, học sinh tiếp thu học cách thụ động, mô tuýp Và phần lớn học sinh theo lối mòn từ xưa chờ đợi vào kiến thức sẵn có mà giáo viên đưa để từ sử dụng làm tập công thức Hầu hết em vận dụng linh hoạt kiến thức tổng hợp để giải toán cách chủ động, sáng tạo Đứng trước thực trạng vậy, thiết nghĩ phải làm để việc giảng dạy cho học sinh, việc giúp học sinh lĩnh hội kiến thức bản, người thầy phải biết kích thích tính tích cực, sáng tạo say mê học hỏi học sinh việc học tập, đòi hỏi học sinh phải có ý thức mục tiêu đặt tạo động lực bên thúc đẩy thân họ hoạt động để đạt mục tiêu Trên sở kiến thức mà học sinh học lập trình để viết chương trình ngôn ngữ lập trình Pascal, học sinh chủ động vận dụng kiến thức “Kiểu xâu” để giải toán thực tế Bởi vì, ngôn ngữ Pascal có tính cấu trúc mạnh, có sở đòi hỏi chương trình phải chặt chẽ, logic Đặc biệt, trang bị kiến thức vững vàng học sinh có kỹ viết chương trình tốt hơn, nhìn nhận vấn đề cách sáng sủa hơn, chặt chẽ xây dựng thuật toán tối ưu giúp cho em hoàn thành chương trình lớn vượt toán bình thường mà nội môn học đòi hỏi Chính vậy, thâ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 đề cách tích cực hơn, sáng tạo giúp cho em yêu thích nhiều ngôn ngữ lập trình Pascal thông qua toán cụ thể 2.3 CÁC GIẢI PHÁP ĐÃ SỬ DỤNG ĐỂ GIẢI QUYẾT VẤN ĐỀ Bằng kiến thức Tin học kinh nghiệm thân công tác giảng dạy môn Tin học, để phát triển khả tư sáng tạo cho học sinh trình viết chương trình sử dụng phương pháp gợi động kích thích tính tích cực, khả tư duy, sáng tạo, say mê, tìm tòi, học hỏi học sinh qua cách giảng dạy thực tiễn “Kiểu xâu”, trình bày qua giải pháp đây: - Chính xác hóa nhận thức học sinh “Kiểu xâu”; - Khắc phục sai lầm học sinh lập trình kiểu xâu; -Rèn luyện kỹ cho học sinh qua số tập đặc trưng; Để thực ý tưởng nêu đề tài, áp dụng giải pháp chủ yếu vào giảng dạy học sinh khối 11 làm tảng ôn luyện học sinh giỏi Tôi đưa ví dụ từ dễ đến khó, từ đơn giản đến phức tạp tương ứng với giải pháp hướng dẫn học sinh xác định trọng tâm toán Sau với học sinh hoàn thiện cách gợi ý vấn đề nảy sinh cụ thể yêu cầu toán Tôi tổ chức thực giải pháp sau: 2.3.1 Chính xác hóa nhận thức học sinh “Kiểu xâu” 2.3.1.1 Có thể xem xâu mảng chiều mà phần tử kí tự Các kí tự xâu đánh số thứ tự, thường 1; Xét ví dụ: Cho khai báo sau: Type Hoten = String[30]; St80 = String[80]; Var Name: Hoten; Line: St80; St: String; Hãy điền từ/cụm từ thích hợp vào phần trống phát biểu sau: a Hoten St80 các…………………… b Name là………… có tối đa………… kí tự c Line là…………….có tối đa………… kí tự d St là……………….có tối đa………… kí tự Nếu dạy sách giáo khoa trình bày phần khai báo biến xâu Sách giáo khoa đưa cách khai báo trực tiếp Mặc dù, ta hiểu “xâu mảng chiều”, cách khai báo biến kiểu xâu tương tự kiểu mảng có hai cách: khai báo trực tiếp khai báo gián tiếp Nhưng sách giáo khoa không trình bày lại, giáo viên không ý mà trình bày sách giáo khoa vô hình dung học sinh cách khai báo gián tiếp kiểu xâu Như vậy, với toán tưởng đơn giản học sinh lại lúng túng xác định thành phần khai báo nêu ví dụ Vậy nên, dạy cách khai báo biến xâu, trình bày rõ hai cách khai báo cho học sinh Cách Khai báo trực tiếp biến xâu: Var : string[độ dài lớn xâu]; Var : string; {Khi độ dài lớn xâu nhận giá trị ngầm định 255} Ví dụ: Var hoten : string[26]; Var chugiai: string; Cách Khai báo gián tiếp biến xâu qua kiểu xâu: Type = string[độ dài lớn xâu]; Var : ; Ví dụ: Type Hoten = String[30]; Var name: Hoten; Như vậy, học sinh nắm rõ cách khai báo biến xâu, giải ví dụ cách dễ dàng a Hoten St80 kiểu xâu kí tự b Name biến kiểu xâu kí tự;có tối đa 30 kí tự c Line biến kiểu xâu kí tự ;có tối đa 80 kí tự d St biến kiểu xâu kí tự; có tối đa 255 kí tự 2.3.1.2 Tuy hình dung xâu mảng chiều kiểu mảng chiều với phần tử thuộc kiểu char khác với kiểu xâu (khai báo từ khóa string) * Điểm giống khác mảng chiều xâu: - Giống nhau: Cùng kiểu liệu có cấu trúc, truy cập vào phần tử riêng biệt - Khác nhau: + Xâu vừa kiểu liệu có cấu trúc vừa kiểu liệu vô hướng, truy cập vào toàn xâu liệu đơn; + Các phần tử xâu kí tự; + Ở số ngôn ngữ lập trình, xâu có độ dài hạn chế; + Mảng có kích thước lớn; + Phần tử mảng có kiểu 2.3.1.3 Hàm chuẩn kiểu xâu cho kết giá trị, tùy theo hàm cụ thể mà giá trị số, kí tự hay xâu Ví dụ: - Length(s), pos(s1,s2) cho kết số nguyên không âm - Copy (s,vt,n) cho kết xâu - Upcase(c) cho kết kí tự, ý c phải phần tử xâu hay kí tự * Một số thủ tục hàm chuẩn dùng để xử lí xâu Ngoài hàm thủ tục chuẩn trình bày sách giáo khoa, cung cấp thêm cho học sinh số hàm tục để học sinh áp dụng giải toán kiểu xâu tốt Nhất đối tượng ôn luyện học sinh giỏi - Thủ tục STR(N,st): Thủ tục thực việc chuyển đổi giá trị số N thành kiểu xâu đưa kết vào biến st Ví dụ: Giá trị N Biểu thức Kết 1500 Str(N,st) ‘1500’ - Thủ tục VAL(st,N,code): chuyển đổi giá trị st thành đại lượng kiểu nguyên hay thực ghi kết vào biến N Biến code biến kiểu integer Nếu việc chuyển đổi lỗi code có giá trị 0, ngược lại code chứa số vị trí kí tự phát sinh lỗi giá trị N không xác định Ví dụ: Giá trị st Biểu thức Kết ‘1500’ val(st,N,code) Code=0, N=1500 ’14.2A+02’ val(st,N,code) Code=5 - Hàm CONCAT(s1,s2,…,sn): trả xâu thu từ việc ghép xâu s1,s2, …,sn Ví dụ: Biểu thức Kết concat(‘Toi’, ‘hoc’, ‘bai’) ‘Toi hoc bai’ - Hàm CHR(X): Cho kí tự có mã X bảng mã ASCII Ví dụ: chr(65)= ‘A’; chr(97)= ‘a’ - Hàm ORD(ch): cho mã kí tự ch bảng mã ASCII Ví dụ: ord(‘A’) = 65; ord(‘a’) = 97 2.3.1.4 Xâu tạo thành kí tự, có dấu cách Dấu cách thể văn phần trống ngăn cách hai từ viết liên tiếp; 2.3.1.5 Khi sử dụng lệnh gán, ta gán trị xâu kí tự cho biến xâu kí tự việc gán trị xâu kí tự cho biến kiểu kí tự không hợp lệ dù xâu có độ dài 1; 2.3.1.6 Tham số hàm thủ tục chuẩn phải hợp lí, Chẳng hạn dùng insert(s1,s2,10) length(s2)

Ngày đăng: 17/10/2017, 09:31

Từ khóa liên quan

Mục lục

  • 1. MỞ ĐẦU

    • 1.1. LÍ DO CHỌN ĐỀ TÀI

    • 1.2. MỤC ĐÍCH NGHIÊN CỨU

    • 1.3. ĐỐI TƯỢNG NGHIÊN CỨU

    • 1.4. PHƯƠNG PHÁP NGHIÊN CỨU

    • 2. NỘI DUNG SÁNG KIẾN KINH NGHIỆM

      • 2.1. CƠ SỞ LÝ LUẬN CỦA SÁNG KIẾN KINH NGHIỆM

      • 2.2. THỰC TRẠNG CỦA VẤN ĐỀ

      • 2.3. CÁC GIẢI PHÁP ĐÃ SỬ DỤNG ĐỂ GIẢI QUYẾT VẤN ĐỀ

        • 2.3.1. Chính xác hóa nhận thức của học sinh về “Kiểu xâu”

        • 2.3.2. Khắc phục sai lầm của học sinh trong lập trình kiểu xâu

        • 2.3.3. Rèn luyện kỹ năng cho học sinh qua một số bài tập đặc trưng

          • 2.3.3.1. Bài toán kiểm tra tính đối xứng của một xâu

          • * Ý tưởng:

          • 2.3.3.2. Bài toán đếm số lần xuất hiện các kí tự trong một xâu

          • 2.3.3.3. Bài toán chuẩn hóa xâu

          • 2.3.3.4. Bài toán mã hóa và giải mã một xâu

          • 2.3.3.5. Bài toán nén và giải nén một xâu

          • 2.4. HIỆU QUẢ CỦA SÁNG KIẾN KINH NGHIỆM

          • 3. KẾT LUẬN VÀ KIẾN NGHỊ

Tài liệu cùng người dùng

Tài liệu liên quan