1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

9 66 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 223,76 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

-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.. 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[r]

Trang 1

Ngày soạn 11/12/09

i Mục tiêu

1 Kiến thức:

-7()8 9+,: ;< =,( ớch :?4 cỏc hàm và 85? 8D: liờn quan xõu trong ngụn *-I =JK trỡnh Pascal

-NB 9+,: :O6 trỳc chung và :5Q: *R*- :?4 BS8 ;T hàm và 85? 8D: liờn quan 9)* xõu :?4 ngụn *-I =JK trỡnh Pascal

2 Kĩ năng:

-5J* U()8 và U+V: 9W6 ;X YD*- 9+,: BS8 ;T hàm và 85? 8D: 9Z -([( E61)8 BS8 ;T bài 8JK 9\* -([* liờn quan

3 Tư duy:

- Logic cỏc ki Z6 9 ó 5_: 8`G ta ]5[ *R*- =JK trỡnh CV( cỏc :5+\*- trỡnh K5Q: 8`K 5\*M

4 Thỏi độ:

- Chỳ ý *5(b8 tỡnh, 8+ duy 8T8 khi =JK trỡnh R*- hỏi xõy Y<*- bài.

ii 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 đề

iii Tiến trình dạy học

1 Kiểm tra bài cũ:

- Khai bỏo U()*& VAR 82*3U()* : e9S dài =V* *5O8 :?4 xõu];

- 5JK F6O8 giỏ 8.h cho U()* xõu: read/readln(); write/writeln();

- Tham :5()6 9)* 8n*- ký 8< trong xõu: 82*3U()*e:5o3;TfM

- Phộp ghộp xõu: ký 5(b6 là +, 9+,: ;X YD*- 9Z ghộp *5(r6 xõu thành BS8 xõu

- Cỏc phộp so sỏnh: =, <>, >, <, <=, >=: 85<: 5(b* C(b: 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.

1 (V( 85(b6 :O6 trỳc chung :?4 hàm length(st)

lờn U[*-M

- v(& í *-5x4 :?4 Length và :?4 st?

1 Quan sỏt :O6 trỳc chung

- Length: là tờn hàm, cú *-5x4 là 9S dài, st: là

Tiết 30

Trang 2

- 5()6 :5+\*- trỡnh vớ YD&

Var st:string;

Begin

st:= ‘Ha Noi’;

Write(length(st));

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trỡnh in ra màn

hỡnh?

- 5<: 5(b* :5+\*- trỡnh 9Z 5_: sinh 85O1 ])8

E6[M

- v(& 5Q: *R*- :?4 hàm length() là gỡ?

- 5()6 9r bài 8JK Q*- YD*-& %()8 :5+\*- trỡnh

*5JK BS8 xõu, in ra màn hỡnh ;T ký 8< ‘a’ cú

trong xõu

2 (V( 85(b6 :O6 trỳc chung :?4 hàm

Upcase(ch)

- 5()6 :5+\*- trỡnh vớ YD&

Var ch:char;

Begin

ch:= ‘h’;

Write(upcase(ch));

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trỡnh in ra màn

hỡnh?

- 5<: 5(b* :5+\*- trỡnh 9Z 5_: sinh 85O1 ])8

E6[M

- v(& 5Q: *R*- :?4 hàm upcase()?

- 5()6 bài 8JK Q*- YD*-& %()8 :5+\*- trỡnh

*5JK BS8 xõu, in ra màn hỡnh xõu 9{ Y`*- in

hoa

BS8 U(Z6 85Q: xõu ký 8<M

- Quan sỏt :5+\*- trỡnh 9Z Y< tớnh ])8 E6[M

- d)8 E6[ là: 6

- Quan sỏt ])8 E6[ :?4 :5+\*- trỡnh

- Hàm cho ;T =+,*- ký 8< :?4 xõu st

2 Quan sỏt :O6 trỳc chung :?4 hàm Upcase

- Quan sỏt :5+\*- trỡnh 9Z Y< tớnh ])8 E6[M

- d)8 E6[ là: H

- Quan sỏt ])8 E6[ :?4 :5+\*- trỡnh

- Cho giỏ 8.h là :5I cỏi in hoa :?4 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 (V( 85(b6 :O6 trỳc chung :?4 hàm Pos

Trang 3

3 (V( 85(b6 :O6 trúc chung :?4 hàm

Pos(s1,s2)

- 5()6 :5+\*- trình ví YD&

Var vt:byte;

Begin

vt:=Pos(‘cd’, ‘abcdefcd’);

Write(vt);

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trình in ra màn

hình?

- 5<: 5(b* :5+\*- trình 9Z 5_: sinh 85O1 ])8

E6[M

- v(& 5Q: *R*- :?4 hàm pos?

- Thay tham ;T :?4 hàm Pos trong :5+\*- trình

U„*- Pos(‘k’, ‘abc’) v( ])8 E6[ :?4 hàm U„*-

bao nhiêu?

- 5()6 bài 8JK Q*- YD*-& %()8 :5+\*- trình

*5JK vào BS8 xâu st Xét xem trong xâu có YO6

cách hay không?

- v(& Có cách -([( nào khác?

3 Quan sát :O6 trúc chung :?4 hàm Pos và các

ví YD 9Z U()8 :5Q: *R*-M

- Quan sát :5+\*- trình 9Z Y< tính ])8 E6[M

- d)8 E6[ là: 3

- Quan sát ])8 E6[ :?4 :5+\*- trình

- Hàm cho giá tri là BS8 ;T nguyên là Ch trí :?4 xâu st2 trong xâu st2

- 7„*- không 0

Var st:string;

- Có 85Z ;X YD*- For 9Z tìm YO6 cách trong xâu

HOẠT ĐỘNG 3 Hàm Copy, thủ tục Delete.

4 (V( 85(b6 :O6 trúc chung :?4 hàm

copy(st,vt,n)

- 5()6 :5+\*- trình ví YD&

Var st:string;

Begin

st:=copy(‘bai tap’,3,4);

Write(st);

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trình in ra màn

hình?

- 5<: 5(b* :5+\*- trình 9Z 5_: sinh 85O1 ])8

E6[M

4 Quan sát :O6 trúc chug :?4 hàm copy và ví

YD 9Z U()8 :5Q: *R*-M

- Quan sát :5+\*- trình 9Z Y< tính ])8 E6[M

- d)8 E6[ là: ‘i ta’

- Quan sát ])8 E6[ :?4 :5+\*- trình

- Hàm cho giá 8.h là BS8 xâu ký 8< 9+,: =O1

Trang 4

- v(& 5Q: *R*- :?4 hàm copy?

- Thay các tham ;T :?4 hàm copy trong :5+\*-

trình ví YD trên *5+ sau và 5v( ])8 E6[ in ra

màn hình:

Copy(‘abc’,1,5)

Copy(‘abc’,5,2)

Copy(‘abc’,1,0)

- 5<: 5(b* :5+\*- trình 9Z 5_: sinh 85O1 ])8

E6[M

5 (V( 85(b6 :O6 trúc chung :?4 85? 8D:

delete(st,vt,n);

- 5()6 :5+\*- trình ví YD&

Var st:string;

Begin

st:= ‘HaNoi’;

delete(st,3,2);

Write(st);

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trình in ra màn

hình?

- 5<: 5(b* :5+\*- trình 9Z 5_: sinh 85O1 ])8

E6[M

- v( :5Q: *R*- :?4 85? 8D: delete();

- Thay =b*5 gán st:= ‘HaNoi’; và 85? 8D: xóa

Uˆ( các =b*5 sau và 5v( ])8 E6[ in ra màn hình

st:=’abc’; Delete(st,1,5);

st:=’abc’; Delete(st,5,2);

st:=’abc’; Delete(st,1,0);

- 5()6 bài 8JK Q*- YD*-& %()8 :5+\*- trình

*5JK BS8 xâu và xoá 9( các YO6 cách 85n4 ˆ

9W6 xâu

trong xâu st, -‰B n ký 8< UN8 9W6 8`( Ch trí vt

Cho giá 8.h là: ‘abc’

Cho giá 8.h là xâu .'*-Cho giá 8.h là xâu

.'* Quan sát ])8 E6[ :?4 :5+\*- trình 9Z ](ZB

*-5(bB suy =6J*M

5 Quan sát :O6 trúc chung :?4 85? 8D: Insert và các ví YDM

- Quan sát :5+\*- trình 9Z Y< tính ])8 E6[M

st=’Hai’

- Quan sát ])8 E6[ :?4 :5+\*- trình

- 5? 8D: 85<: 5(b* C(b: xóa 9( trong U()* xâu

st -‰B n ký 8<c UN8 9W6 8n Ch trí vt

st:= ‘’; xâu '*-M st:= ‘abc’;

st:= ‘abc’;

Var st:string;

begin readln(st);

while st[1]= ‘ ’ do delete(st,1,1);

writeln(st);

readln;

end

HOẠT ĐỘNG 4 Giới thiệu cấu trúc chung của thủ tục Insert.

Trang 5

6 (V( 85(b6 :O6 trúc chung :?4 85? 8D:

Insert(st1,st2,vt);

- 5()6 :5+\*- trình ví YD&

Var st1,st2:string;

Begin

st2:=‘HaNoi’;

st1:= ‘ ’;

insert(st1,st2,3);

Write(st);

readln;

End

- v(& d)8 E6[ :?4 :5+\*- trình in ra màn

hình?

- 5<: 5(b* :5+\*- trình 9Z 5_: sinh 85O1 ])8

E6[M

- v( :5Q: *R*- :?4 85? 8D: insert();

- Thay =b*5 gán st2:=‘HaNoi’; và 85? 8D: chèn

Uˆ( các =b*5 *5+ sau và 5v( ])8 E6[&

st2:=‘ef’; Insert(‘abc’,st2, 5);

st2:=‘ef’; Insert(‘abc’,st2, 0);

6 Quan sát :O6 trúc chung :?4 85? 8D: Insert

- Quan sát :5+\*- trình 9Z Y< tính ])8 E6[M

- d)8 E6[ st2=’Ha Noi’

- Quan sát ])8 E6[ :?4 :5+\*- trình

- 5? 8D: 85<: 5(b* C(b: chèn xâu st1 vào trong U()* xâu st2 UN8 9W6 8`( Ch trí vt

st2= ‘efabc’;

st2= ‘abcef’;

HOẠT ĐỘNG 5 Rèn luyện kĩ năng vận dụng hàm và thủ tục.

1 Xác 9h*5 bài toán

- 5()6 *S( dung 9r bài lên U[*-M

- Xác 9h*5 YI =(b6 vào, YI =(b6 ra

- v(& Các *5(bB CD chính khi -([( E61)8 bài

toán này?

- v(& Trong bài này, ta :W* ;X YD*- *5I*-

hàm và 85? 8D: nào?

2 Chia =VK làm 3 nhóm Yêu :W6 C()8 :5+\*-

trình lên bìa trong

- Thu K5()6 8.[ =/(M 5()6 ])8 E6[ lên U[*-M _(

5_: sinh nhóm khác *5J* xét, 9@*5 giá và U‹

sung

3 5()6 :5+\*- trình BŒ6 giáo viên 9^ C()8 9Z

chính xác hóa =`( cho 5_: sinh

1 Quan sát, suy *-5x 9Z 8.[ =/(M

- Vào: S8 xâu ký 8< UO8 ]M

- Ra: S8 xâu :5o có 1 ký 8.N*- -(I4 hai 8nM

- Xoá B_( YO6 cách 85n4 9W6 xâu và :6T( xâu

- Xoá các YO6 cách 85n4 -(I4 hai 8nM

- Hàm Pos(), 85? 8D: delete();

2 5[G =6J* theo nhóm 9Z C()8 :5+\*- trình

- Thông báo ])8E6[M

- 5J* xét và U‹ sung *5I*- 85()6 sót :?4 nhóm khác

3 Quan sát và ghi *5V

Trang 6

Giáo viên ;G`* ;Ž* các ví YD này 9Z 8(b* cho 5_:

sinh theo dõi trên màn hình :*- *5+ C(b: :5`1 85X

và không làm BO8 85/( gian *-‰( C()8 :5+\*- trình

%V( B'( ví YDc giáo viên 9( sâu vào câu =b*5 8.<:

8()K 9@K Q*- yêu :W6 :?4 ví YDc *5+ CJ1 các em ;‘

8()K thu nhanh 5\*

Ví dụ 1 : 5JK 1 xâu, C()8 ra màn hình xâu dài

5\*

Ví dụ 2 : 5JK 1 xâu, ](ZB tra xem ký 8< 9W6 tiên

:?4 xâu S1 có trùng CV( ký 8< :6T( cùng :?4 xâu S2

hay không ?

Một số ví dụ :

VD 1 :

Program vd1 ; 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

VD 2 :

Program vd2 ; Uses crt ; Var s1,s2 : String ;

x : Byte ; Begin Clrscr ; Write('Nhap xau thu 1 : ');

Trang 7

Ví dụ 3 : 5JK 1 xâu, C()8 ra màn hình xâu 9{ theo

85Q 8< *-+,: =`( :?4 các ký 8< trong xâu

Ví dụ 4 : 5JK 1 xâu, C()8 ra màn hình xâu 9{

*5+*- 9^ 9+,: Uv 8O8 :[ các ký 8< là YO6 cách

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 :

Program vd3 ; 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 :

Program vd4 ; Uses crt ; Var i,k : Byte ;

Trang 8

Ví dụ 5 : 5JK 1 xâu, C()8 ra màn hình xâu -‰B

các ký 8< ;T :?4 xâu 9{

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 :

Program Xulixau ; 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 ;

Trang 9

End

3 Củng cố:

Những hàm và thủ tục liờn quan đến xõu

- 5? 8D: Delete(st,vt,n);

- 5? 8D: 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ò:

- ([( bài 8JK ;T 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:

Ngày đăng: 01/04/2021, 21:35

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w