Hãy viết lại chương trình trên, trong đĩ khơng dùng biến xâu p:

Một phần của tài liệu giao an tin hoc 11 (Trang 76 - 78)

III. TIẾN TRÌNH TIẾT DẠY 1 Kiểm tra bài cũ:

b) Hãy viết lại chương trình trên, trong đĩ khơng dùng biến xâu p:

đĩ khơng dùng biến xâu p:

Var i,x,n:byte; a,p:string;

HS: Lên bảng viết chương trình. GV: Nhận xét, sửa lỗi CT (nếu cĩ) và

cho điểm.

GV: Mỗi lần lấy một kí tự trong xâu (kí

tự đầu tiên) đem so sánh với các kí tự cịn lại, nếu bằng thì cập nhật số lần xuất hiện của kí tự đĩ. Sau đĩ xố hết các kí tự bằng với kí tự đem so sánh. Cứ tiếp tục như vậy cho đến khi xâu đĩ là xâu rỗng.

GV: Sau khi gợi ý, gọi một học sinh lên

bảng viết chương trình.

GV: Nhận xét, sửa lỗi CT (nếu cĩ) và

cho điểm.

GV: Ý tưởng để giải bài tốn này: Tìm

vị trí xuất hiện của xâu ‘anh’ trong xâu vừa nhập, nếu tìm thấy thì xố và thay thế bằng xâu ‘em’.

GV: Làm thế nào để kiểm tra được trong

xâu S khơng cịn xâu ‘anh’.

HS: Pos(‘anh’,S) trả về giá trị =0.

GV: Dùng thủ tục hay hàm nào để tìm vị

BEGIN

write('Nhap vao xau:');readln(a); x:=length(a) div 2;

n:=length(a); for i:=1 to x do

if a[i]<>a[length(a)-i+1] then BEGIN

write('Xau khong doi xung'); readln;

exit; end;

write('xau doi xung'); readln; end. Bài 2: SGK Program bai2; var s:string; kt:char; i,j,n,slxh:byte; BEGIN

write('Nhap vao mot xau:'); readln(s); while length(s)<>0 do

Begin slxh:=0;

for j:=1 to length(s) do

if upcase(s[1]) = upcase(s[j]) then slxh:=slxh+1;

writeln('So lan xuat hien cua ', s[1],' la:',slxh); kt:=s[1]; i:=pos(s[1],s); while i<>0 do Begin delete(s,i,1);

trí mà xâu ‘anh’ xuất hiện trong S. HS: i:=pos(‘anh’,S);

GV: Dùng thủ tục nào để xĩa xâu ‘anh’

tại vị trí i vừ tìm được.

HS: Delete(S,i,3);

GV: Dung thủ tục nào để chèn xâu ‘anh’

vào S tại vị trí i.

HS: Insert(‘em’,S,i);

GV: Sau khi gợi ý, gọi một học sinh lên

bảng viết chương trình.

GV: Nhận xét, sửa lỡi CT (nếu cĩ) và

cho điểm. i:=pos(kt,s); end; end; readln; END. Bài 3: SGK program vd; var s:string; i:byte; BEGIN

WRITE('Nhap vao mot xau: '); readln(s); i:=pos('anh',s); while i<>0 do Begin delete(s,i,3); insert('em',s,i); i:=pos('anh',s); end;

write('Xau sau khi da thay the: ',s); readln;

END.

3. Củng cố: Phải nắm vững các thủ tục và hàm biến đổi xâu để giải quyết các bài

tốn về xâu.

Một phần của tài liệu giao an tin hoc 11 (Trang 76 - 78)

Tải bản đầy đủ (DOCX)

(155 trang)
w