Tải bản đầy đủ (.pdf) (9 trang)

Giáo án môn Tin học khối 11 - Bài 14: Kiểu xâu (tiết 2)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (223.76 KB, 9 trang )

<span class='text_page_counter'>(1)</span>SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. Tiết 30 i.. Ngày soạn Ngày giảng. 11/12/09 /12/09. NĂM HỌC 2009-2010. Bài 14. KIỂU XÂU (TIẾT 2). Môc tiªu 1. Kiến thức: -Biết được sự lợi ích của các hàm và thủ tục liên quan 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. 3. Tư duy: - Logic các ki ểu đ ã học tạo ta khả năng lập trình với các chương trình phức tạp hơn. 4. Thái độ:. - Chú ý nhiệt tình, tư duy tốt khi lập trình. Hăng hái xây dựng bài. ii.. iii.. ChuÈn bÞ bµi gi¶ng 1. Phương tiện: - GV: Giáo án, bài giảng điện tử. - HS: Sách giáo khoa, vở ghi. Xem trước bài học. 2. Phương pháp dạy học -Gợi mở vấn đáp -§µm tho¹i -Đặt vấn đề TiÕn tr×nh d¹y häc 1. KiÓm tra bµi cò: - Khai báo biến: VAR tên_biến : STRING[độ dài lớn nhất của xâu]; - Nhập xuất giá trị cho biến xâu: read/readln(); write/writeln(); - Tham chiếu đến từng ký tự trong xâu: tên_biến[chỉ_số]. - Phép ghép xâu: ký hiệu là +, được sử dụng để ghép nhiều xâu thành một xâu - Các phép so sánh: =, <>, >, <, <=, >=: thực hiện việc so sánh hai xâu. 2. Néi dung bµi gi¶ng: Hoạt động 1. Tìm hiểu về một số hàm và thủ tục chuẩn liên quan xâu trong ngôn ngữ lập trình Pascal. Hoạt động của giáo viên 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?. Hoạt động cua học sinh 1. Quan sát cấu trúc chung. - Length: là tên hàm, có nghĩa là độ dài, st: là. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 1.

<span class='text_page_counter'>(2)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. - 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.. NĂM HỌC 2009-2010. 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])); End.. Hoạt động 2 Hàm Pos. Giới thiệu cấu trúc chung của hàm Pos. Hoạt động của giáo viên. Hoạt động cua học sinh. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 2.

<span class='text_page_counter'>(3)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. 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 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?. NĂM HỌC 2009-2010. 3. Quan sát cấu trúc chung của hàm Pos 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á tri là một số nguyên là vị trí của xâu st2 trong xâu st2. - Bằng không 0.. - 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? Var st:string; - 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ó thể sử dụng For để tìm dấu cách trong cách hay không? xâu. - Hỏi: Có cách giải nào khác?. HOẠT ĐỘNG 3 Hàm Copy, thủ tục Delete. Hoạt động của giáo viên 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:string; 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ả.. Hoạt động cua học sinh 4. Quan sát cấu trúc chug 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. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 3.

<span class='text_page_counter'>(4)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. - Hỏi: Chức năng của hàm copy?. NĂM HỌC 2009-2010. trong xâu st, gồm n ký tự bắt đầu tại vị trí vt.. - 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:string; 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();. 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 Insert 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 xóa đ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’; - Thay lệnh gán st:= ‘HaNoi’; và thủ tục xóa st:= ‘abc’; 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); Var st:string; st:=’abc’; Delete(st,1,0); begin - Chiếu bài tập ứng dụng: Viết chương trình readln(st); nhập một xâu và xoá đi các dấu cách thừa ở while st[1]= ‘ ’ do delete(st,1,1); đầu xâu. writeln(st); readln; end.. HOẠT ĐỘNG 4 Giới thiệu cấu trúc chung của thủ tục Insert. Hoạt động của giáo viên. Hoạt động cua học sinh. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 4.

<span class='text_page_counter'>(5)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. 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:string; 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();. NĂM HỌC 2009-2010. 6. Quan sát cấu trúc chung của thủ tục Insert. - 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’; - Thay lệnh gán st2:=‘HaNoi’; và thủ tục chèn st2= ‘abcef’; 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); HOẠT ĐỘNG 5 Rèn luyện kĩ năng vận dụng hàm và thủ tục. Hoạt động của giáo viên 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.. Hoạt động cua học sinh 1. Quan sát, suy nghĩ để trả lời.. - 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 hóa lại cho học sinh.. 2. Thảo luận theo nhóm để viết chương trình. - Thông báo kếtquả. - 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ớ. - Vào: Một xâu ký tự bất kỳ. - Ra: Một xâu chỉ có 1 ký trắng giữa hai từ. - Xoá mọi dấu cách thừa đầu xâu và cuối xâu. - Hỏi: Các nhiệm vụ chính khi giải quyết bài - Xoá các dấu cách thừa giữa hai từ. toán này? - Hàm Pos(), thủ tục delete();. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 5.

<span class='text_page_counter'>(6)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. NĂM HỌC 2009-2010. Giáo viên soạn sẵn các ví dụ này để tiện cho học sinh theo dõi trên màn hình cũng như việc chạy thử và không làm mất thời gian ngồi viết chương trình . Với mỗi ví dụ, giáo viên đi sâu vào câu lệnh trực tiếp đáp ứng yêu cầu của ví dụ, như vậy các em sẽ tiếp thu nhanh hơn . Một số ví dụ : VD 1 : Ví dụ 1 : Nhập 1 xâu, viết ra màn hình xâu dài Program vd1 ; hơn . Uses crt ; Var s1,s2 : String ; Begin Clrscr ; Write('Nhap xau thu 1 : ') ; Readln(s1) ; Write('Nhap xau thu 2 : ') ; Readln(s2) ; If length(s1) > Length(s2) then Write(s1) else Write(s2); Readln ; End . Ví dụ 2 : Nhập 1 xâu, kiểm tra xem ký tự đầu tiên VD 2 : của xâu S1 có trùng với ký tự cuối cùng của xâu S2 Program vd2 ; hay không ? Uses crt ; Var s1,s2 : String ; x : Byte ; Begin Clrscr ; Write('Nhap xau thu 1 : '); GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 6.

<span class='text_page_counter'>(7)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. NĂM HỌC 2009-2010. Readln(s1) ; Write('Nhap xau thu 2 : '); Readln(s2) ; x := length(s2) ; If s1[1] = s2[x] then Write('Trung nha') else Write('Khac nhau'); Readln ; End . VD 3 : Ví dụ 3 : Nhập 1 xâu, viết ra màn hình xâu đó theo Program vd3 ; thứ tự ngược lại của các ký tự trong xâu . Uses crt ; Var i,k : Byte ; a : String ; Begin Clrscr ; Write('Nhap xau : ') ; Readln(a) ; k := length(a) ; For i := k downto 1 do Write(a[i]) ; Readln ; End . VD 4 : Ví dụ 4 : Nhập 1 xâu, viết ra màn hình xâu đó Program vd4 ; nhưng đã được bỏ tất cả các ký tự là dấu cách . Uses crt ; Var i,k : Byte ; GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 7.

<span class='text_page_counter'>(8)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. NĂM HỌC 2009-2010. a,b : String ; Begin Clrscr ; Write('Nhap xau : ') ; Readln(a) ; k := length(a) ; b :='' ; For i := 1 to k do if a[i] <> '' then b := b+a[i] ; Write(b) ; Readln ; End . VD 5 : Ví dụ 5 : Nhập 1 xâu, viết ra màn hình xâu gồm Program Xulixau ; các ký tự số của xâu đó . Uses crt ; Var s1,s2 : String ; i : Byte ; Begin Clrscr ; Write('Nhap xau s1 : ') ; Readln(s1) ; s2 := '' ; For i := 1 to length(s1) do If ('0'<s1[i]) and (s1[i]<='9') then s2 := s2 + s1[i] ; Write(s2); Readln ; GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 8.

<span class='text_page_counter'>(9)</span> SỞ GIÁO DỤC & ĐÀO TẠO LAI CHÂU – TRƯỜNG THPT TÂN UYÊN. NĂM HỌC 2009-2010. End .. 3. Cñng cè: 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,st2) - Hàm UpCase(ch) 4. DÆn dß: - Giải bài tập số 10 trang 80.. iv.. NhËn xÐt  Phương pháp:  HiÖu qu¶ sö dông:  HiÖu qu¶ SD TBDH:  ND cÇn ®iÓu chØnh:  Nhận xét của giáo viên hướng dẫn:. GV: Đỗ Tiến Vượng Trường THPT Tân Uyên – Tân Uyên_Lai Châu Lop11.com. Trang 9.

<span class='text_page_counter'>(10)</span>

×