I. MỤC TIÊU:
1. Kiến thức
- Biết được lợi ích của các hàm và thủ tục liên quan đến xâu trong ngôn ngữ lập trình Pascal.
- Nắm được cấu trúc chung và chức năng của một số hàm và thủ tục liên quan đến xâu của ngôn ngữ lập trình Pascal.
2. Kĩ năng
- Nhận biết và bước đầu sử dụng được một số hàm và thủ tục để giải quyết một số bài tập đơn giản liên quan.
II. CHUẨN BỊ:
1. Giáo viên:
Giáo án giảng dạy, máy chiếu đa năng
Bài 12: KIỂU XÂU (tiếp) (Tiết PPCT: 28) Ngày soạn: Ngày đăng ký giáo án: ....................... Người duyệt giáo án (TTCM duyệt, BGH duyệt): ..................................................................................................................................... ..................................................................................................................................... I. Mục tiêu: 1. Kiến thức - Biết được lợi ích của các hàm và thủ tục liên quan đến xâu trong ngôn ngữ lập trình Pascal. - Nắm được cấu trúc chung và chức năng của một số hàm và thủ tục liên quan đến xâu của ngôn ngữ lập trình Pascal. 2. Kĩ năng - Nhận biết và bước đầu sử dụng được một số hàm và thủ tục để giải quyết một số bài tập đơn giản liên quan. II. Chuẩn bị: 1. Giáo viên: Giáo án giảng dạy, máy chiếu đa năng 2. Học sinh: Sỏch giỏo khoa, sỏch bài tập Tin học 10, vở ghi III. hoạt động dạy và học 1. Hoạt động 1: Tìm hiểu về một số hàm và thủ tục liên quan đến xâu trong ngôn ngữ lập trình Pascal. a. Mục tiêu - Học sinh biết được một số hàm và thủ tục liên quan đến xâu. Nắm được cấu trúc chung, hiểu được các tham số của hàm và thủ tục. - Biết được chức năng của các hàm và thủ tục chuẩn. b. Nội dung - Thủ tục Delete(st,vt,n) thực hiện việc xoá đi trong xâu st gồm n kí tự, bắt đầu từ vị trí vt. - Thủ tục Insert(st1,st2,vt) thực hiện việc chèn xâu st1 vào xâu st2 bắt đầu từ vị trí vt. - Hàm Copy(st,vt,n) cho giá trị là một xâu kí tự được lấy trong xâu st, gồm n kí tự liên tiếp bắt đầu từ vị trí vt của xâu st. - Hàm Post(st1,st2) cho giá trị là vị trí xuất hiện đầu tiên của xâu st1 trong xâu st2. - Hàm UpCase(ch) cho giá trị là kí tự hoa tương ứng với kí tự ch. c. Các bước tiến hành Hoạt động của giáo viên Hoạt động của học sinh 1. Giới thiệu cấu trúc chung của hàm length(st) lên bảng. - Hỏi: ý nghĩa của Length và của st? - Chiếu chương trình ví dụ: Var st:string; Begin st:= ‘Ha Noi’; Write(length(st)); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi: Chức năng của hàm length() là gì? - Chiếu đề bài tập ứng dụng: Viết chương trình nhập một xâu, in ra màn hình số kí tự ‘a’ có trong xâu. 2. Giới thiệu cấu trúc chung của hàm Upcase(ch). - Chiếu chương trình ví dụ: Var ch:char; Begin ch:= ‘h’; Write(upcase(ch)); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi: Chức năng của hàm upcase()? - Chiếu bài tập ứng dụng: Viết chương trình nhập một xâu, in ra màn hình xâu đó dạng in hoa. 3. Giới thiệu cấu trúc chung của hàm Pos(s1,s2). - Chiếu chương trình ví dụ: Var vt:byte; Begin ch:= ‘h’; vt:=Pos(‘cd’, ‘abcdefcd’); Write(vt); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi: Chức năng của hàm pos? - Thay tham số của hàm Pos trong chương trình bằng Pos(‘k’, ‘abc’). Hỏi kết quả của hàm bằng bao nhiêu? - Chiếu bài tập ứng dụng: Viết chương trình nhập vào một xâu st. Xét xem trong xâu có dấu cách hay không? - Hỏi: Có cách giải nào khác? 4. Giới thiệu cấu trúc chung của hàm copy(st,vt,n). - Chiếu chương trình ví dụ: Var st:tring; Begin st:=copy(‘bai tap’,3,4); Write(st); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi: Chức năng của hàm copy? - Thay các tham số của hàm copy trong chương trình ví dụ trên như sau và hỏi kết quả in ra màn hình: Copy(‘abc’,1,5) Copy(‘abc’,5,2) Copy(‘abc’,1,0) - Thực hiện chương trình để học sinh thấy kết quả. 5. Giới thiệu cấu trúc chung của thủ tục delete(st,vt,n); - Chiếu chương trình ví dụ: Var st:tring; Begin st:= ‘HaNoi’; delete(st,3,2); Write(st); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi chức năng của thủ tục delete(); - Thay lệnh gán st:= ‘HaNoi’; và thủ tục xoá bởi các lệnh sau và hỏi kết quả in ra màn hình. st:=‘abc’; Delete(st,1,5); st:=‘abc’; Delete(st,5,2); st:=‘abc’; Delete(st,1,0); - Chiếu bài tập ứng dụng: Viết chương trình nhập một xâu và xoá đi các dấu cách thừa ở đầu xâu. 6. Giới thiệu cấu trúc chung của thủ tục Insert(st1,st2,vt); - Chiếu chương trình ví dụ: Var st1,st2:tring; Begin st2:= ‘HaNoi’; st1:= ‘ ’; Insert(st1,st2,3); Write(st); readln; End. - Hỏi: Kết quả của chương trình in ra màn hình? - Thực hiện chương trình để học sinh thấy kết quả. - Hỏi chức năng của thủ tục insert(); - Thay lệnh gán st2:=‘HaNoi’; và thủ tục chèn bởi các lệnh như sau và hỏi kết quả: st2:= ‘ef’; Insert(‘abc’,st2,5); st2:= ‘ef’; Insert(‘abc’,st2,0); 1. Quan sát cấu trúc chung. - Length: là tên hàm, có nghĩa là độ dài, st: là một biểu thức xâu kí tự. - Quan sát chương trình để dự tính kết quả. - Kết quả là: 6 - Quan sát kết quả của chương trình. - Hàm cho số lượng kí tự của xâu st. 2. Quan sát cấu trúc chung của hàm Upcase. - Quan sát chương trình để dự tính kết quả. - Kết quả là: H - Quan sát kết quả của chương trình. - Cho giá trị là chữ cái in hoa của ch. Var st:string; Begin readln(st); For i:=1 to length(st) do write(upcase(st[i])); 3. Quan sát cấu trúc chung của hàm Post và các ví dụ để biết chức năng. - Quan sát chương trình để dự tính kết quả. - Kết quả là: 3 - Quan sát kết quả của chương trình. - Hàm cho giá trị là một số nguyên là vị trí của xâu st2 trong xâu st2. - Bằng không 0. Var st:string; Begin readln(st); if post(‘ ’,st)0then write(‘Co’) else write(‘Khong’); End. - Có thể sử dụng For để tìm dấu cách trong xâu. 4. Quan sát cấu trúc chung của hàm copy và ví dụ để biết chức năng. - Quan sát chương trình để dự tính kết quả. - Kết quả là: ‘i ta’ - Quan sát kết quả của chương trình. - Hàm cho giá trị là một xâu kí tự được lây trong xâu st, gồm n kí tự bắt đầu tại vị trí vt. Cho giá trị là: ‘abc’ Cho giá trị là xâu rỗng Cho giá trị là xâu rỗng - Quan sát kết quả của chương trình để kiểm nghiệm suy luận. 5. Quan sát cấu trúc chung của thủ tục delete và các ví dụ. - Quan sát chương trình để dự tính kết quả. st= ‘Hai’ - Quan sát kết quả của chương trình. - Thủ tục thực hiện việc xoá đi trong biến xâu st gồm n kí tự, bắt đầu từ vị trí vt. st:=‘’; xâu rỗng. st:=‘abc’; st:=‘abc’; Var st:tring; begin readln(st); while st[1]= ‘ ’ do delete(st,1,1); writeln(st); readln; end. 6. Quan sát cấu trúc chung của thủ tục Inser. - Quan sát chương trình để dự tính kết quả. - Kết quả st2=‘Ha Noi’ - Quan sát kết quả của chương trình. - Thủ tục thực hiện việc chèn xâu st1 vào trong biến xâu st2 bắt đầu tại vị trí vt. st2= ‘efabc’; st2= ‘abcef’; 2. Hoạt động 2: Rèn luyện kĩ năng vận dụng hàm và thủ tục. a. Mục tiêu: - Học sinh biết sử dụng hàm và thủ tục để giải quyết một số bài toán đơn giản. Linh hoạt trong việc lựa chọn hàm hoặc thủ tục. b. Nội dung - Viết chương trình nhập vào một xâu và xóa đi các dấu cách thừa có trong xâu, chỉ để lại một dấu cách giữa hai từ. c. Các bước tiến hành Hoạt động của giáo viên Hoạt động của học sinh 1. Xác định bài toán - Chiếu nội dung đề bài lên bảng. - Xác định dữ liệu vào, dữ liệu ra. - Hỏi: Các nhiệm vụ chính khi giải quyết bài toán này? - Hỏi: Trong bài này, ta cần sử dụng những hàm và thủ tục nào? 2. Chia lớp làm 3 nhóm. Yêu cầu viết chương trình lên bìa trong. - Thu phiếu trả lời. Chiếu kết quả lên bảng. Gọi học sinh nhóm khác nhận xét, đánh giá và bổ sung. 3. Chiếu chương trình mẫu giáo viên đã viết để chính xác hoá lại cho học sinh. 1. Quan sát, suy nghĩ để trả lời. - Vào: Một xâu kí tự bất kì. - Ra: Một xâu chỉ có 1 kí trắng giữa 2 từ. - Xoá mọi dấu cách thừa đầu xâu và cuối xâu. - Xoá các dấu cách thừa giữa hai từ - Hàm Pos(), thủ tục delete(); 2. Thảo luận theo nhóm để viết chương trình. - Thông báo kết quả. - Nhận xét và bổ sung những thiếu sót của nhóm khác. 3. Quan sát và ghi nhớ. IV. Đánh giá cuối bài 1. Những hàm và thủ tục liên quan đến xâu Thủ tục Delete(st,vt,n) ; Thủ tục Insert(st1,st2,vt); Hàm Copy(st,vt,n); Hàm Length(st), Hàm Pos(st1,st); Hàm UpCase(ch) 2. Câu hỏi và bài tập về nhà - Giải bài tập số 10 trang 80. - Viết chương trình nhập một xâu. In ra màn hình số từ có trong xâu. - Xem phần nội dung của bài thực hành số 5, sách giáo khoa trong 73. - Chuẩn bị một số bài tập để thực hành.
Tài liệu đính kèm: