Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
221,5 KB
Nội dung
Sáng kiến kinh nghiệm Tin học 2016 - 2017 MỤC LỤC Trang I Mở đầu …………………………………………………………………… 1.1 Lí 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 ………………………………….……… II Nội dung sáng kiến kinh nghiệm ………………………………….…… 2.1 Cơ sở lí luận …………………………… ………………….…… 2.2 Thực trạng vấn đề trước áp dụng SKKN ………………… … 2.3 Giải vấn đề tổ chức thực ……………………… 2.4 Hiệu bước đầu SKKN ………………………… …… … 18 III Kết luận, kiến nghị …………………………………………… … …… 19 3.1 Kết luận …………………………………………………………… 19 3.2 Kiến nghị ………………………………………………………… 20 Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 DẠYHỌCKIỂUDỮLIỆUXÂUTHEOĐỊNHHƯỚNGPHÁTTRIỂNNĂNGLỰCHỌCSINH I MỞ ĐẦU 1.1 Lí chọn đề tài Qua nghiên cứu thực tế dạyhọc cho thấy việc rèn luyện phương pháp học tập cho họcsinh không biện pháp nâng cao hiệu dạyhọc mà mục tiêu dạyhọc Hiện số họcsinhhọc chăm học chưa tốt, môn tự nhiên, em thường học biết đấy, học phần sau quên phần trước liên kết kiến thức với nhau, vận dụng kiến thức học trước vào phần sau Phần lớn số họcsinh đọc sách nghe giảng lớp cách tự ghi chép để lưu thông tin, lưu kiến thức trọng tâm vào trí nhớ Dạyhọctheođịnhhướngpháttriểnlựchọcsinhhọc phương pháp học, tăng tính độc lập, chủ động, sáng tạo pháttriển tư Cách họcpháttriểnlực riêng họcsinh không trí tuệ, hệ thống hóa kiến thức (huy động điều học trước để chọn lọc ý để ghi) mà vận dụng kiến thức học qua sách vào sống Kể từ năm học 2014 - 2015, hình thức dạyhọctheođịnhhướngpháttriểnlực tập huấn đến giáo viên Phương pháp có ưu điểm phát huy tối đa tính sáng tạo học sinh, pháttriển khiếu Tất điều làm họcsinh giảm áp lựchọc tập Phương pháp Dạyhọctheođịnhhướngpháttriểnlựcdạyhọc Tin học hình thành cho họcsinh tư mạch lạc, hiểu biết vấn đề cách sâu sắc, có cách nhìn vấn đề cách hệ thống, khoa học Chính vậy, mạnh dạn viết sáng kiến “DẠY HỌCKIỂUDỮLIỆUXÂUTHEOĐỊNHHƯỚNGPHÁTTRIỂNNĂNGLỰCHỌC SINH” Hy vọng kinh nghiệm góp phần giúp em họcsinh hiểu có hứng thú với môn Tin học 1.2 Mục đích nghiên cứu Mục tiêu nghiên cứu đề tài giúp em họcsinh lớp 11 họckiểuliệuxâu thay cách tiếp cận theo nội dung cách tiếp cận theođịnhhướngpháttriểnlực Thông qua ví dụ tập họcsinh biêt vận dụng thao tác xử lí xâu để viết chương trình Đồng thời thông qua Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 tập để pháttriểnlực tư phát giải vấn đề, tư sáng tạo cho họcsinh 1.3 Đối tượng nghiên cứu Đối tượng nghiên cứu đề tài kiểuliệuxâu chương trình tin học 11 Sử dụng hình thức dạyhọctheođịnhhướngpháttriểnlực để họcsinh nắm vững vận dụng thành thạo thao tác xử lí xâu 1.4 Phương pháp nghiên cứu Nghiên cứu lí luận: Nghiên cứu tài liệukiểuliệu có cấu trúc nói chung, kiểuliệuxâu nói riêng chương trình tin học 11 Nghiên cứu thực tiễn: Khảo sát lựchọcsinh xử dụng kiểuliệuxâu để viết chương trình Thực nghiệm sư phạm: Tiến hành thực nghiệm đối tượng họcsinh cụ thể nhằm đánh giá hiệu đề tài II NỘI DUNG SÁNG KIẾN KINH NGHIỆM 2.1 Cơ sở lí luận: Môn Tin học môn khoa học lý thuyết túy họcsinh nhớ không hiểu Việc giáo viên bắt họcsinh ghi nhớ thụ động nội dung sách giáo khoa điều khó, cho dùhọcsinh có cố gắng ghi nhớ bị lẫn lộn Do đó, giáo viên phải không ngừng đổi phương pháp dạy học, lấy “chuẩn kiến thức, kỹ năng” làm kim nam trình dạy học, đồng thời phải biết chọn nội dung “lồng ghép” phù hợp với kiến thức giảng, nhằm hình thành cho họcsinh thói quen tích cực, độc lập, sáng tạo giải tình có vấn đề Một phương pháp dạyhọc đại đưa vào phương pháp dạyhọctheođịnhhướngpháttriểnlựcĐây phương pháp dạyhọc nhiều nước giới áp dụng Qua việc tìm hiểu vận dụng phương pháp dạyhọctheođịnhhướngpháttriển lực, nhận thấy phương pháp dạyhọc có hiệu trình dạyhọc giáo viên học tập họcsinh 2.2 Thực trạng vấn đề trước áp dụng SKKN Từ thực tiễn giảng dạy phần “kiêu xâu” chương trình tin học lớp 11 trường THPT Tống Duy Tân nhận thấy rằng: Sau học xong, giáo Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 viên kiểm tra lại khả nhớ khả trình bày lại phần nội dung họcsinh thể máy móc, gò bó Họcsinh nhớ qua loa họctheo hình thức thuộc lòng, kỹ vận dụng hạn chế Do không nhớ trình tự cú pháp câu lệnh, thao tác xử lí xâu nên họcsinh không viết nhớ, không thực thao tác với kiểuxâu Cũng mà họcsinh không hoàn thành mục tiêu kiến thức kỷ mà giáo viên đặt 2.3 Giải vấn đề tổ chức thực Bước 1: Lựa chọn chủ đề, nội dung dạyhọc Chủ đề: Kiểuliệuxâu Bước 2: Xác định yêu cầu kiến thức, kĩ năng, thái độ Kiến thức: - Biết định nghĩa kiểuliệu xâu; - Biết cú pháp khai báo xâu, truy cập phần tử xâu; - Biết số hàm thủ tục xử lí xâu; - Hiểu số chương trình đơn giản có sử dụng kiểuliệu xâu; Kỹ năng: - Biết khai báo biến kiểu xâu; - Biết sử dụng số hàm thủ tục xử lí xâu; Thái độ: - Thấy cần thiết kiểuliệuxâu xử lí liệu kí tự; - Học sinhh làm quen dần với chương trình xử lí liệu dạng văn bản; - Tiếp tục rèn luyện tư lập trình Bước 3: Lập bảng mô tả yêu cầu cần đạt Loại câu Nội dung hỏi/bài Nhận biết tập Khai Câu HS báo hỏi/bài tập liệuđịnh tính toán không thuộc kiểu số mà kiểu phi số - dạng kí tự Giáo viên: Nguyễn Văn Đông Thông hiểu HS giải thích kiểuliệuhọc chủ yếu thực kiểu số Vận dụng thấp Vận dụng cao HS tìm hiểu đề xuất thao tác làm việc với kiểuliệu kí tự HS ưu điểm cần thiết kiểuliệuxâu Sáng kiến kinh nghiệm Tin học 2016 - 2017 Bài tập Hs biết cú HS biết định pháp khai báo cách khai báo lượng xâuxâu Tham chiếu đến phần tử xâu Bài tập HS thực thực hành khai báo biến kiểuxâu HS lấy ví dụ khai báo xâu HS khai báo kiểuxâu (sai) ví dụ khai báo xâu Các Câu HS biết HS hiểu HS lấy ví thao tác hỏi/bài tập cú pháp ghép thành dụ ghép xâu xử lí xâuđịnh tính xâu phần câu lênh ghép nhiều xâu thành HS biết HS hiểu HS lấy ví cú pháp so quy ước so dụ so sánh hai sánh hai xâu sánh hai xâuxâu kí tự HS biết hàm thường dùng làm việc với xâu HS hiểu ý nghĩa hàm thường dùng làm việc vời xâu HS biết thủ tục thường dùng làm việc với xâu HS hiểu ý nghĩa thủ tục thường dùng làm việc vời xâu Bài tập HS biết định tác lượng nhiều thành xâu HS viết chương trình sử dụng kết hợp thao tác ghép xâu, so sánh hai xâu thực tình Họcsinh biết Họcsinh hiểu HS viết HS viết được ý nghĩa ý nghĩa chương chương Giáo viên: Nguyễn Văn Đông thao ghép xâu HS hiểu ý nghĩa phép ghép xâu, phép so sánh hai xâu HS lấy ví dụ trường hợp sử dụng hàm làm việc với kiểuliệu kí tự (xâu) HS lấy ví dụ trường hợp sử dụng thủ tục làm việc với kiểuliệu kí tự (xâu) HS viết chương trình có sử dụng phép ghép xâu, phép so sánh hai xâu Sáng kiến kinh nghiệm Tin học hàm hàm trình có sử thủ tục xử lí thủ tục xử lí dụng kiểuxâuxâuliệuxâu Trong chương trình có hàm thủ tục xử lí xâu Bài tập HS vận dụng thực hành kiểuliệu xâu, phép ghép xâu, phép so sánh, hàm thủ tục hàm xử lí xâu kết hợp với kiêuliệu khác học để viết chương trình hoàn chỉnh giải vấn đề tình quen thuộc 2016 - 2017 trình kết hợp thao tác xử lí xâu thực tình toán lập trình HS vận dụng kiểuliệu xâu, phép ghép xâu, phép so sánh, hàm thủ tục hàm xử lí xâu kết hợp với kiêuliệu khác học để viết chương trình hoàn chỉnh giải vấn đề tình Bước 4: Đề xuất lựchướng tới Qua dạyhọc chủ đề “kiểu liệu xâu” hướng tới hình thành pháttriển lực: - Nănglực sử dụng ngôn ngữ, thao tác với kiểuliệuxâu bước đầu làm quen với khái niệm hàm thủ tục - Nănglực thực hành thao tác với xâu - Nănglực thực hành, vận dụng kiến thức tin học vào sống Bước 5: Tiến trình dạyhọc Chuẩn bị giáo viên học sinh: - Chuẩn bị học sinh: Sách GK tin 11, ghi - Chuẩn bị giáo viên: + Giáo án, Sách GK Tin 11, Sách GV Tin 11, chuẩn kiến thức kĩ Tin học 11, máy tính, máy chiếu; + Giáo viên chuẩn bị chương trình có sử dụng kiểuliệu xâu, thao tác với xâu (sử dụng để chạy minh họa chương trình Pascal trình chiếu) Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 Chương trình ghép xâu (chương trinh 1- hoạt động 7) Chương trình có sử dụng kết hợp thủ tục delete insert (chương trinh 2hoạt động 10) Chương trình tập (chương trình 3- hoạt động 13) Chương trình tập (chương trình - hoạt động 13) Chương trình sử dụng kết hợp thao tac xử lí xâu tập (chương trình 5- hoạt động 14) Chương trình sử dụng kết hợp thao tac xử lí xâu tập (chương trình - hoạt động 14) Chương trình sử dụng kết hợp thao tac xử lí xâu tập (chương trình - hoạt động 14) Hoạt động Lựa chọn tình công việc (gợi động cơ) GV đặt vấn đề yêu cầu HS cho biết kiểuliệu từ trước đến ta sử dụng chủ yếu thuộc loại số hay phi số? GV nhận xét câu trả lời nhấn mạnh kiểuliệuhọc chủ yếu kiểuliệu loại số Hoạt động 2: Phát tình có vấn đề GV đặt vấn đề với toán có sử dụng kiểuliệu kí tự (văn bản) thực nào? GV nhận xét trình bày cho họcsinh thấy sử dụng kiểuliệu chuẩn Char (kiểu kí tự) học không hoàn thành toán GV nêu vấn đề yêu cầu họcsinh cách khắc phục hạn chế kiểuliệu Char (kiểu kí tự chuẩn học) Giới thiệu kiểuliệuxâu khắc phục nhược điểm Hoạt động 3: HS đọc skg Hoạt động 4: Tìm hiểu định nghĩa xâu, cách tham chiếu đến phần tử xâu GV yêu cầu họcsinh cho biết định nghĩa xâu GV trình bày để họcsinh biết xâu ngôn ngữ lập trình pascal viết cặp dấu nháy đơn GV trình bày cho HS thấy xem xâu mảng chiều mà phần tử kí tự GV yêu cầu họcsinh dựa vào cách thức truy cập phần tử mảng chiều trình bày cách tham chiếu phần tử xâu Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 Ví dụ 1: Xâu st ‘Hoc_sinh’ st[1] ‘H’ st[5] ‘s’ Hoạt động 5: Tìm hiểu cú pháp khai báo xâu GV yêu cầu họcsinh đọc tìm hiểu SGK cho biết cú pháp khai báo xâu GV trình bày cú pháp khai báo xâu Chú ý nhấn mạnh xâu Turbo pascal có độ dài tối đa 255 kí tự GV trình bày (ghi bảng) cú pháp khai báo xâu VAR : string[]; Hoặc VAR : string; GV giải thích thành phần cú pháp khai báo xâu Lưu ý HS không cần phải ghi phần giải thích GV đưa ví dụ khai báo biến xâu Yêu cầu họcsinh lấy ví dụ tương tự việc khai báo biến xâu Ví dụ 2: VAR St: string[10]; Hoten: string[20]; Diachi: string; {độ dài ngầm định 255} GV lưu ý họcsinh lập trình đặt tên biến việc đặt tên gần với ý nghĩa toán, ta thường đặt biến xâu st, st1,st2,st3 để tạo thành thói quen tránh nhầm lẫn sau GV yêu cầu họcsinh khai báo phần khai báo sau: Ví dụ 3: VAR St1, St2: string[50]; St3: string(30); St3: string[300]; GV nhận xét phần trình bày họcsinh Đồng thời nhắc lại cú pháp khai báo xâu Hoạt động 6: HS đọc skg Hoạt động 7: Tìm hiểu thao tác ghép xâu GV yêu cầu HS đọc thông tin SGK cho biết thao tác ghép xâu gì? Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV nhấn mạnh thao tác ghép xâu cho phép ghép nhiều xâu thành xâu GV trình bày (ghi bảng) cú pháp ghép xâu Ví dụ 4: ‘Viet’ + ’ Nam’ ta xâu ‘Viet Nam’ ‘Hoc’ + ‘-‘ +’mon’ + ‘-‘ + ‘tin’ ta xâu ‘Hoc-mon-tin’ GV trình chiếu mô thao tác ghép xâu chương trình chuẩn bị sẵn Program ghep_xau; {chương trình 1} Var st, st1, st2: string; Begin st1:= ‘Thanh’; st2:= ‘_Hoa’; st:= st1 + st2; writeln(‘ Ket qua la’, st); readln; End GV chạy chương trình, cho HS xem kết Hoạt động 8: Tìm hiểu phép so sánh hai xâu GV yêu cầu HS đọc thông tin SGK cho biết phép so sánh hai xâu GV (ghi bảng) phép so sánh hai xâu bao gồm =, , = GV yêu cầu họcsinh cho biết qui tắc so sánh hai xâu GV giải thích cho họcsinh biết lập trình có phép so sánh ngôn ngữ lập trình pascal sử dụng qui tắc để so sánh GV đặt vấn đề sử dụng qui tắc so sánh để so sánh hai xâu ví dụ sau Ví dụ 5: ‘Hoc’ ‘Hoc’ ‘Hoc’ ‘Hoc sinh’ ‘Hoc_bai’ ‘Lam_bai’ GV nhận xét phần trả lời họcsinh Hoạt động 9: Giới thiệu thủ tục xử lí xâu GV giới thiệu thủ tục xử lí xâu: • Thủ tục delete(st,vt,n) Giáo viên: Nguyễn Văn Đông Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV giới thiệu thành phần thủ tục st xâu, vt n giá trị nguyên (lưu ý đại lượng st, vt, n sử dụng tiếp thủ tục hàm xử lí xâu tiếp theo) GV giới thiệu ý nghĩa thủ tục xóa n kí tự xâu st vị trí vt (lưu ý xâu st bị thay đổi sau xóa n kí tự) GV trình bày ví dụ Ví dụ 6: st := ‘Thanh_hoa’ Delete(st,6,4); Sau thực thủ tục xâu st lại là: ‘Thanh’ GV đặt vấn đề Hãy theo dõi ví dụ sau (GV trình chiếu ví dụ lên bảng) Ví dụ 7: St := ‘Vinh_hung’; Delete(st,1,5); GV đặt vấn đề sau thục thủ tục xâu st lại GV nhận xét kết cho biết xâu st lại ‘hung’ (nếu họcsinh trả lời sai giáo viên giải thích để họcsinh rõ) • Thủ tục insert(st1, st2, vt); Chèn xâu st1 vào xâu st2 vị trí vt GV trình bày ví dụ Ví dụ 8: st1:=’mon’; st2:= ‘hoc sinh’; Insert(st1, st2, 5); Sau thưc thủ tục xâu st2 là: ‘hoc-mon-sinh’ GV đặt vấn đề Hãy theo dõi ví dụ sau (GV trình chiếu ví dụ lên bảng) Ví dụ 9: St11 := ‘va’; St2:=’hoa hong’; Insert(st1,st2, 5); GV đặt vấn đề sau thục thủ tục xâu st2 gì? Giáo viên: Nguyễn Văn Đông 10 Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV nhận xét kết cho biết xâu st2 ‘hoa-và-hong’’ (nếu họcsinh trả lời sai giáo viên giải thích để họcsinh rõ) Hoạt động 10: GV chiếu chương trình chuẩn bị sẵn có sử dụng thủ tục delete insert yêu cầu họcsinh cho biết kết Program tong_hop; {chương trình 2} Var st, st1, st2: string; Begin st1 := ‘Vinh_Loc’; st2 := ‘Hung’; delete(st1,6,3); Writeln(‘ket qua 1’, st1); insert(st2, st1, 6); Writeln(‘ket qua2’, st1); Writeln(‘ket qua3’, st2); readln; End GV nhận xét câu trả lời họcsinh (lưu ý chương trình có sử dụng kết hợp thủ tuc delete insert họcsinh trả lời chưa xác kết quar1, kết quar2 kết 3) GV chạy chương trình giải thích kết cho họcsinh Như họcsinh nhớ hiêu ý nghĩa thủ tục vừa học Hoạt động 11: Giới thiệu hàm xử lí xâu GV giới thiệu hàm xử lí xâu: • Hàm copy(st,vt,n) tạo xâu gồm n kí tự liên tiếp bắt đầu tự vị trí vt xâu st GV Giới thiệu thành phần ý nghĩa hàm copy GV trình bày ví dụ Ví dụ 10: st:= ‘Tin_hoc’; st1:= copy(st,4,3); Sau thực xong hàm xâu st1 ‘học’ GV cần nhấn mạnh hàm copy() tạo xâu từ kí tự xâu có Giáo viên: Nguyễn Văn Đông 11 Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV đặt vấn đề Hãy theo dõi ví dụ sau (GV trình chiếu ví dụ lên bảng) Ví dụ 11: st := ‘Vinh_loc’; st1:=copy(st,1,4); GV đặt vấn đề sau thực hàm ta xâu st1là gì? GV nhận xét kết cho biết xâu st1 ‘Vinh’ (nếu họcsinh trả lời sai giáo viên giải thích để họcsinh rõ) GV giới thiệu tiếp hàm xử lí xâu: • Hàm Length(st): Cho kết độ dài xâu st GV đặt vấn đề tập giá trị hàm length() gì? GV nhấn mạnh kết hàm trả độ dài xâu giá trị hàm khoảng từ đến 255 Ví dụ 12: St:= ‘Tin_hoc’ X:= length(st); X có giá trị • Hàm Pos(st1, st2): Cho vị trí xuất xâu st1 st2 GV giải thích ý nghĩa hàm Cần nhấn mạnh vị trí Trường hợp có nhiều xâu st1 st2 (tức có nhiều vị trí) hàm trả kết vị trí GV trình bày ví dụ Ví dụ 13: st1:= ‘a’; st2:= ‘cdbae’; X:=pos(st1,st2); X có giá trị Gv đặt vấn đề theo dõi ví dụ sau cho biết giá trị hàm pos? Ví dụ 14: st1:=’a’; st2:= ‘cabdaeah’; x:=pos(st1,st2); Giáo viên: Nguyễn Văn Đông 12 Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV nhấn mạnh giá trị x Trong xâu st2 có nhiều xâu st1 hàm trả kết vị trí • Hàm upcase(ch): cho kết chữ viết hoa ch (ch kí tự) GV lưu ý họcsinhxâudãy kí tự Muốn viết hoa xâu ta phải viết hoa lần lươt tất kí tự xâu GV trình bày ví dụ Ví dụ 14: ch:=’b’; ch1:=upcase(ch); Ta kí tự ch1 ‘B’ Hoạt động 12: Giới thiệu chương trình GV chiếu chương trình có sử dụng hàm thủ tục Thực chạy chương trình TP Freepascal GV nhắc em quan sát chương trình không ghi chép Program do_dai_xau; {chương trinh 3} Var st: string; N: byte; Begin Write(‘nhap xau’); Readln(st); N:= length(st); Writeln(‘ xau vua nhap la’, st); Writeln(‘Xau có dai’, N); Readln; End GV chạy chương trình, cho HS xem kết GV vào chương trình giải thích câu lênh chứa hàm xử lí xâu Program Vi_tri; {chương trinh 5} Var st, st1, st2: string; N, M:byte Begin Giáo viên: Nguyễn Văn Đông 13 Sáng kiến kinh nghiệm Tin học 2016 - 2017 st:=’ab’; st1:= ‘abc’; st2:=’abdceab’; N:=pos(st,st2); M:=pos(st1,st2); Writeln(‘Vi tri xau’, st, ‘trong xau’, st2, ‘ la: ’, N); Writeln(‘Vi tri xau’, st1, ‘trong xau’, st2 ,‘ la: ’, M); Readln; End GV chạy chương trình, cho HS xem kết GV vào chương trình giải thích câu lênh chứa hàm xử lí xâu GV trình chiếu chương trình kết hợp số hàm xử lí xâu Program Viet_hoa; {chương trinh 6} Var st: string; N, i: byte; Begin Write(‘Nhap xau’) Readln(‘st); N:= lenhth(st); Writeln(‘Xau vua nhap la’, st); For i:=1 to N st[i]:= upcase(st[i]); Writeln(‘Xau viet hoa la: ’, st) ; Readln; End GV giải thích chương trình, chạy chương trình cho họcsinh xem kết Đồng thời giải thích cho họcsinh ta truy cập phần tử xâu (tương tự mảng chiều) GV gợi động cho họcsinh giả sử yêu cầu toán viết hoa phần xâu ta xử lí (trường hợp viết hoa phần tên xâu họ tên)? Qua việc trả lời họcsinhhọcsinh có liên hệ đến toán thực tế Hoạt động 13: Vận dụng thao tác xử lí xâu (vận dụng thấp) Giáo viên: Nguyễn Văn Đông 14 Sáng kiến kinh nghiệm Tin học 2016 - 2017 GV yêu cầu HS hoàn thành tập sau: (Bài tập giải tình thực tế) Bài tập 1: Viết chương trình nhập vào từ bàn phím hai xâu Đưa hình xâu dài hơn, thi đưa xâu nhập sau GV gợi ý cho HS vân dụng câu lênh chương trình vừa trình chiếu (chương trình tính độ dài xâu) GV yêu cầu HS lên bảng trình bày Họcsinh làm chương trình tương đương sau (chương trình họcsinh làm em sử dụng biến để lưu lại độ dài xâu) Program bai_tap1; Var st1, st2: string; Begin Write(‘Nhap xau thu nhat’); Readln(st1); Writeln(‘Nhap xau thu hai’); Readln(st2); If length(st1) > length(st2) then Writeln(‘ Ket qua la’, st1) Else Writeln(‘ket qua la’, st2); Readln; End GV nhận xét cho điểm làm họcsinh Yêu cầu HS lên thực phần làm máy tính chạy chương trình TP (trình chiếu trước lớp) HS hoàn thành nhanh yêu cầu làm bảng Bai tập 2: Viết chương trình nhập vào từ bàn phím hai xâu st1 st2 Kiểm tra cho biết xâu st1 có st2 hay không, có cho biết vị trí xâu st1 st2 GV gợi ý cho HS vân dụng câu lênh chương trình vừa trình chiếu (chương trình kiểm tra vị trí hai xâu) GV yêu cầu HS lên bảng trình bày HS làm chương trình tương đương sau Program bai_tap2; Var st1, st2: string; Giáo viên: Nguyễn Văn Đông 15 Sáng kiến kinh nghiệm Tin học 2016 - 2017 N:byte; Begin Write(‘Nhap xau thu nhat’); Readln(st1); Writeln(‘Nhap xau thu hai’); Readln(st2); N:=pos(st1,st2); If N = then Writeln(‘ Xau thu nhat khong co xau thu hai’) Else Writeln(‘Xau thu nhat xuat hien xau thu hai o vi tri:’, N); Readln; End GV nhận xét cho điểm làm họcsinh Yêu cầu HS lên thực phần làm máy tính chạy chương trình TP (trình chiếu trước lớp) Hoạt động 14: Vận dụng cao thao tác xử lí xâu GV đặt vấn đề tập ví dụ sử dụng thao thac truy cập phân tử xâu, hàm thủ tục xử lí xâu.Trong thực tế có toán cần kết hợp thao tác xử lí xâu để viết chương trình Bài tập 3: Viết chương trình nhập xâu st1 từ bàn phím Xâu st2 tạo kí tự xâu st1 theo chiều ngược lại Hãy tạo xâu st2 Đưa kết hình (ví dụ st1 ‘ABCD’ ta có st2 ‘DCBA’) GV gợi ý cho HS xâu st2 tạo kí tự xâu st1 theo chiều ngược lại Các phần tử xâu st1 ghép lại theo thứ tự từ cuối lùi đầu tạo thành xâu st2 HS làm chương trình tương đương sau Program bai_tap3; Var st1, st2: string; i, n: byte; Begin Write(‘Nhap xau’); Readln(st1); st2:=’’; {khoi tao xau st2, la xau rong} n :=length(st1); For i: = n downto Giáo viên: Nguyễn Văn Đông 16 Sáng kiến kinh nghiệm Tin học 2016 - 2017 st2:= st2 + st1[i]; Writeln(‘ ket qua la:’, st2); Readln; End GV nhận xét cho điểm làm họcsinh GV lưu ý nhấn mạnh họcsinh yêu cầu toán tạo xâu đảo ngược lại so với xâu có Tránh trường hợp họcsinh không tạo xâu mà hiển thị (ra hình) xâu đảo ngược Bài tập 4: Viết chương trình nhập vào từ bàn phím xâu st1, tạo xâu st2 gốm tất chữ số có st1 (giữ nguyên thứ tự xuất hiện) Đưa kết hình GV gợi ý cho HS xâu st2 tạo bới kí tự chữ số xâu st1 Vì cần phải truy cập vào phần tử xâu st1 để kiểm tra xem có phải phần tử số hay không Các phần tử xâu st1 số ghép lại (theo thứ tự) tạo thành xâu st2 HS làm chương trình tương đương sau Program bai_tap4; Var st1, st2: string; i, n: byte; Begin Write(‘Nhap xau’); Readln(st1); st2:=’’; {khoi tao xau st2 la xau rong} n :=length(st1); For i: = to n If (st1[i] >= ‘0’) and (st1[i]