Tải bản đầy đủ (.docx) (10 trang)

Tuan 14 15 tiet 25 29 tin 11

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 (419.14 KB, 10 trang )

Giáo án tin học 11 – năm học 2019 -2020
CHỦ ĐỀ: KIỂU XÂU
(5 tiết, tiết 25- 29 trong PPCT)
Ngày giảng: 11/12/2020
Bước 1. Lựa chọn chủ đề: Kiểu xâu
Bước 2: Xác định KTKN và năng lực hướng tới
a. Chuẩn kiến thức, kĩ năng, thái độ theo chương trình
Kiến thức
- Biết xâu là một dãy ký tự (có thể coi xâu là mảng một chiều).
- Biết cách khai báo xâu, truy cập phần tử của xâu.
- Biết các thao tác xử lí xâu, ý nghĩa sử dụng của các thao tác đó.
Kỹ năng
- Sử dụng được một số thủ tục, hàm thông dụng về xâu.
- Viết được một số chương trình đơn giản có sử dụng xâu.
b. Năng lực hướng tới:
- Kĩ năng, hiểu biết về lập trình: Gõ đúng quy cách. Có khả năng xác định và giải quyết các vấn đề
đơn giản đối với dữ liệu kiểu xâu.
- Mơ hình hóa các tình huống thực tiễn xảy ra phụ thuộc vào cấu trúc của kiểu xâu trong tin học.
Bước 3. Bảng mô tả các mức độ cần đạt
Nội dung
Loại câu
Nhận biết
Thông hiểu
Vận dụng thấp
Vận dụng cao
hỏi/bài tập
Câu hỏi/bài
HS nêu được một Hs lấy được một
tập định tính
số khái niệm về
số ví dụ về xâu kí


xâu, các yếu tố
tự đơn giản trong
xác định xâu,
thực tế.
cách khai báo
Câu hỏi
biến xâu
ND1.DT.TH1
Câu hỏi
ND1.DT.NB1
ND1. DT.NB2.
1. Khái
ND1. DT.NB3.
niệm và
khai báo
Bài tập định
lượng
Bài tập thực
Hs viết được
hành
khai báo xâu
trong tình huống
thực tế.
Câu hỏi
ND1. TH. VDT1
ND1. TH. VDT2
2. Các thao Câu hỏi/bài
Hs mô tả cấu trúc Hs chỉ ra được các
tác xử lí
tập định tính

các thao tác xử lí thành phần trong
xâu
xâu.
các thao tác xử lí
xâu cụ thể.
Câu hỏi
Câu hỏi
ND2.DT.NB1
ND2.DT.TH1
Bài tập định
Hs hiểu ý nghĩa
lượng
các hàm và thủ tục
trong xâu để giải
thích được hoạt
động cụ thể.
Giáo viên: Phan Thị Thanh Hà


Giáo án tin học 11 – năm học 2019 -2020
Câu hỏi
ND2. DL.TH1.
ND2. DL.TH2.
ND2. DL.TH3.
ND2. DL.TH4.
ND2. DL.TH5.
ND2. DL.TH6.
Bài tập thực
hành
Câu hỏi/bài

tập định tính

3. Một số ví
dụ và bài
tập

HS biết các thao
tác nhập xâu, in
xâu và duyệt các
phần tử của xâu.
Câu ND3.
DT.NB1

Bài tập định
lượng
Bài tập thực
hành

Giáo viên: Phan Thị Thanh Hà

Hs hiểu được nội
dung yêu cầu của
bài toán về xâu chỉ
ra được các thành
phần của chương
trình ví dụ, hàm và
thủ tục cụ thể.
Câu hỏi
ND3. DT.TH1.
ND3. DT.TH2.

ND3. DT.TH3.
ND3. DT.TH4.
ND3. DT.TH5.
ND3. DT.TH6.
ND3. DT.TH7.
Hs vận dụng các
lệnh của kiểu
xâu kết hợp câu
lệnh đã học để
viết chương trình
đơn giản.
Câu hỏi
ND3.TH.VDT1
ND3.TH.VDT2
ND3.TH.VDT3
ND3.TH.VDT4

Hs vận dụng
các lệnh của
kiểu xâu kết
hợp câu lệnh đã
học để viết
chương trình
giải bài tốn
khó về xâu
ND3.TH.VDC1


Giáo án tin học 11 – năm học 2019 -2020


Giáo viên: Phan Thị Thanh Hà


Giáo án tin học 11 – năm học 2019 -2020
Bước 4. Tiến trình dạy học theo chủ đề
Hoạt động 1: Tìm hiểu một số khái niệm về xâu và cách khai báo biến xâu
HOẠT ĐỘNG CỦA GV
HOẠT ĐỘNG CỦA HS

Câu 1. Gồm 5 ký tự. Đây là từ khóa sử
dụng trong khai báo mảng một chiều?
Câu 2. Gồm 6 ký tự. Những hình ảnh sau
đây gợi cho bạn nhớ đến ngơn ngữ lập trình
nào?

Câu 3. Gồm 4 ký tự. Mỗi phần tử trong mảng A
sau đây có kiểu dữ liệu là gì?
1
2
3
4
5
6
7
8
9
T
H
A
N

H
S
E
N
Câu 4. Gồm 3 ký tự. Đơn vị cơ bản để đo lượng
thơng tin là gì?
Câu 5. Gồm 7 ký tự. Tên kiểu dữ liệu số nguyên bộ
nhớ lưu trữ một giá trị là 2 byte, có phạm vi giá trị
từ -215 đến 215-1?
Câu hàng dọc dẫn dắt học sinh vào bài mới.
Quan sát chương trình sau và trả lời câu hỏi:

Câu 1. Biến A có kiểu gì?
Câu 2. Kết quả đưa ra màn hình là gì nếu dãy A có
9 phần tử được nhập vào là:
T

H

A

N

H

S

E

N


Để giải quyết vấn đề này NNLT đưa ra cho chúng
ta một kiểu dữ liệu mới đó là kiểu xâu.
Câu ND1. DT.NB1

Giáo viên: Phan Thị Thanh Hà

HS quan sát suy nghĩ để giải quyết bài toán.

HS: Tham khảo SGK trả lời câu hỏi.
* Một số khái niệm về xâu
- Xâu là 1 dãy kí tự trong bảng mã ASCII
- Mỗi kí tự gọi là 1 phần tử của xâu
- Số lượng kí tự trong xâu được gọi là độ dài của
xâu.
- Xâu có độ dài bằng 0 gọi là xâu rỗng.


Giáo án tin học 11 – năm học 2019 -2020
HOẠT ĐỘNG CỦA GV
Câu ND1. DT.TH1
Câu ND1. DT.NB2

HOẠT ĐỘNG CỦA HS
VD: ‘truong thpt Thanh Sen
Trả lời câu hỏi.
* Các yếu tố xác định xâu:
- Tên kiểu xâu
- Cách khai báo biến kiểu xâu
- Số lượng kí tự của xâu

- Các phép toán thao tác với xâu
- Cách tham chiếu tới phần tử của xâu

GV: Có thể xem xâu là mảng một chiều mà mỗi Chú ý nghe giảng
phần tử là một kí tự, các kí tự cũng được đánh số
thứ tự thường bắt đầu bằng 1. Cách tham chiếu đến
các phần tử của xâu được xác đinh bởi tên xâu
cùng chỉ số đặt trong cặp ngoặc [].
* Cách tham chiếu tới phần tử của xâu:
<Tên biến xâu>[chỉ số]
Ví dụ: Biến s lưu trữ giá trị của xâu: ‘ Nguyen Anh
Tuan’
S[1]  'N'
S[8]  'A'
Thảo luận nhóm
Bài 1. Các phát biểu sau đây đúng hay sai?
a. Xâu chỉ gồm các chữ cái
b. Xâu là một dãy kí tự trong bộ mã ASCII
c. ‘2018’ khơng phải là một xâu
d. Xâu ‘Xin chao’ có độ dài 9.
Bài 2. Cho xâu S = ‘THPT Thanh Sen’. Hãy cho
biết:
a. Xâu S có độ dài bao nhiêu?
b. S[5] là kí tự nào?
c. S[8] là kí tự nào?

Hs nghiên cứu trả lời

1. Khai báo
Câu ND1. DT.NB3


* Khai báo:
Var <Tên biến xâu>:String[Độ dài LN của xâu];
Var Hoten:string[30];

Câu ND1. DL.VDT1.
Var S:string;
HS: Có thể khai báo được, độ dài lớn nhất được
Khai báo như thế này có được khơng? Nếu được
ngầm định là 255.
thì độ dài lớn nhất của xâu là bao nhiêu?
Chú ý:
Hs ghi chép
Trong mơ tả xâu có thể bỏ qua phần khai
báo độ dài, khi đó độ dài lớn nhất của xâu sẽ
nhận giá trị ngầm định là 255.
Nếu cần biến lưu trữ xâu có độ dài lớn hơn
255 ta có thể khai báo theo cú pháp:
Var <Tên biến>: AnsiString;
Khi đó độ dài tối đa của xâu chỉ phụ thuộc vào
Giáo viên: Phan Thị Thanh Hà


Giáo án tin học 11 – năm học 2019 -2020
HOẠT ĐỘNG CỦA GV
HOẠT ĐỘNG CỦA HS
bộ nhớ máy tính.
Thảo luận nhóm:
Hs đứng tại chỗ trả lời
Bài 3. Trong các khai báo sau, khai báo nào đúng,

khai báo nào sai?
A. Var st:string[100];
B. Var ho ten:string[30];
C. Var xau:string[300];
D. Var s: ansistring;
Hoạt động 2: Tìm hiểu các thao tác xử lí xâu.
HOẠT ĐỘNG CỦA GV
HOẠT ĐỘNG CỦA HS
2. Các thao tác xử lí xâu
a.Phép ghép xâu:
- Kí hiệu bằng dấu:+
- Để sử dụng ghép nhiều xâu thành 1 xâu
Chú ý nghe và ghi bài
GV lấy ví dụ minh họa cho HS hiểu
-VD: 'hoc' + ' sinh'  'hoc sinh'
b. Phép so sánh
GV: chúng ta đã học những phép so sánh nào?
Trả lời câu hỏi.
- Quy tắc:
Phép so sánh: <, <=, >, >=, <>, =
+ Xâu A >xâu B: Nếu kí tự dầu tiên khác nhau giữa
chúng kể từ trái sang phải trong xâu A có mảng
Chú ý nghe ghi bài.
ASCII lớn hơn.
+Nếu A là đoạn đầu của B thì A+ Xâu A= xâu B nếu chúng giống nhau hồn tồn.
Thảo luận nhóm
Bài 5. Kết quả của phép toán: ‘1’ +’1’ là:
a. 2
b. ‘2’ c. ‘11’

d. ‘1+1’
Hs đứng tại chỗ đưa ra đáp án
Bài 6. Cho các xâu A = ‘May tinh’, B = ‘May
tinh cua toi’,
C = ‘Máy tính ca nhan’. Các mệnh đề sau đây đúng
hay sai?
a. A b. A>B c. B >C
d. C>B
c. Thủ tục Delete(s,vt,n)
Chú ý nghe giảng
Xóa n kí tự của xâu S bắt đầu tại vị trí vt
Câu ND2. DL.TH2.
 st=‘Lop 11Hn’
Bài 7. st:=‘Lop 11H Thanh Sen’;
Delete(st,8,9);
d. Thủ tục insert(s1,s2,vt): Chèn xâu s1 vào xâu s2 tại
vị trí vt
Câu ND2. DL.TH3.
 S2=‘Lop 11HK10’
Bài 8. S1:=’11H’; S2:=‘Lop K10’;
Insert(S1,S2,5);
e. Hàm copy(s,vt,n): Tạo xâu gồm n kí tự liên tiếp bắt
đầu từ vị trí vt của xâu s.
Câu ND2. DL.TH4.
Bài 9. S:=‘abcdgk’;
 S1=‘cd’
Giáo viên: Phan Thị Thanh Hà



Giáo án tin học 11 – năm học 2019 -2020
HOẠT ĐỘNG CỦA GV
S1:=Copy(s,3,2);
f. Hàm length(s): Cho độ dài của xâu S
Câu ND2. DL.TH5.
Bài 10. S:=‘Lop 11H’;
N:=length(S);

HOẠT ĐỘNG CỦA HS

 N=7

g. Hàm pos(s1,s2): Cho vị trí xuất hiện đầu tiên của
xâu S1 trong xâu S2
Câu ND2. DL.TH6.
 vt=4
Bài 11. S1:=‘dg’; S2:=‘abcdgk’;
vt:=pos(s1,s2);
h.Hàm upcase(ch): Cho chữ cái in hoa ứng với kí tự
Ch
Bài 12. ch:=Upcase(‘a’);
ch:=Upcase(‘H’);
1. Chương trình sau đây giải bài tốn nào?

 ch=‘A’
 Ch=‘H‘
Nghiên cứu và trả lời.
1. Chương trình đưa ra xâu có dội dài lớn hơn
nếu hai xâu bằng nhau thì đưa ra xâu thứ 2.


2. Trong chương trình trên, nếu nhập a = ‘Nguyen
Van Loc’ và b = ‘Nguyen Thi Lan’ thì kết quả sau
khi chạy chương trình là gì?

2. Kết quả đưa ra màn hình ‘Nguyen Thi Lan’

Hoạt động 3: Tìm hiểu một số ví dụ về xâu
Hoạt động của GV
3. Một số ví dụ
VD1. Nhập vào 2 xâu và đưa ra màn hình xâu dài hơn
nếu bằng nhau thì đưa ra xâu nhập sau.
Câu ND3. DT.TH1.
Câu ND3. DT.TH2.
Câu ND3. DT.TH3.
GV đưa ra chương trình hồn chỉnh u cầu HS nêu ý nghĩa
của các câu lệnh trong chương trình.
Gọi HS lên bảng viết chương trình hồn chỉnh

Giáo viên: Phan Thị Thanh Hà

Hoạt động của HS

TL: Sử dụng 2 biến xâu a và b.
Xâu dài hơn là xâu có độ dài lớn hơn.
Sử dụng hàm length(a) và length(b)

Chú ý quan sát và trả lời câu hỏi của GV
Program
Vd1;



Giáo án tin học 11 – năm học 2019 -2020
Hoạt động của GV
Var
Begin

Hoạt động của HS
a, b: string[30];
wite('nhap xau a=');
Readln(a);
write('Nhap xau
b=');
Readln(b);

VD4. Nhập 1 xâu, hiển thị ra màn hình xâu đó nhưng đã
được bỏ dấu cách.
Hướng dẫn HS làm VD4.
HD: Ghép một xâu mới từ xâu đã nhập bằng cách lấy các kí
tự khác kí tự trống có trong xâu. Sử dụng cấu trúc rẽ nhánh.
Yêu cầu HS hiểu và viết được chương trình hồn chỉnh

If
Length(a)>Length(b) then
write(a)
else write(b);
Readln;
End.
Theo hướng dẫn của GV HS tự viết
chương trình VD4.


1.Hoạt động 1.
HOẠT ĐỘNG CỦA GIÁO VIÊN
HOẠT ĐỘNG CỦA HỌC SINH
 Phân nhóm và số máy tương ứng cho mỗi Ngồi vào máy được phân
nhóm học sinh
 Đưa ra nội dung thực hành

Nắm nội dung thực hành và tiến hành thực

hiện dưới sự hướng dẫn của giáo viên
 - Khởi động Turbo pascal

? Thực hiện khởi động máy
TL Thực hiện yêu cầu
 Quan sát các nhóm khởi động và khắc phục Kiểm tra máy
sự cố
 Hướng dẫn các nhóm thực hiện nội dung Thực hiện nội dung thực hành và dưới sự giúp
thực hành

đỡ của giáo viên

 Giải đáp các vướng mắc của học sinh và
khắc phục sự cố máy tính.
Bài 1: Kiểm tra một xâu có phải là xâu đối
xứng (Palindrome) hay khơng?

Giáo viên: Phan Thị Thanh Hà

var a,p:string[50];
i,x:integer;

kt:boolean;
begin
write('Nhap xau:');readln(a);
{Cách 1:}
p:='';
for i:=length(a) downto 1 do
p:=p+a[i];
if a=p then
write('La xau doi xung')
else write('Khong la xau doi xung');}
{Cách 2:}


Giáo án tin học 11 – năm học 2019 -2020
kt:=true;x:=length(a);
for i:=1 to x div 2 do
if a[i]<>a[x-i+1] then
kt:=false;
if kt=true then write('La xau doi xung')
else write('Khong la xau doi xung');
readln
end.
Bài 2: Viết chương trình nhập từ bàn phím một
xâu kí tự S và thông báo ra rằng số lần xuất
hiện mỗi chữ cái tiếng Anh trong xâu S (không
phân biệt chữ hoa chữ thường)
Hướng dẫn HS :
Ta thấy cần ghi nhận số lần xuất hiện của từng
chữ cái. Có tất cả 26 chữ cái từ A đến Z. Có thể
dung mảng một chiều để ghi nhận số lần xuất

hiện trong xâu S của các kí tự.
Do chương trình khơng phân biệt chữ hoa chữ
thường nên ta dùng hàm upcase để đổi kí tự
thường thành kí tự hoa.
Có thể cho dàn ý sau:
{phần khai báo}
Hs nghiên cứu theo hướng dẫn của GV
begin
Var dem:array['A'..'Z'] of byte;
{nhập xâu S}
ch:char;
s:string;
{khởi tạo giá trị cho mảng dem}
i:byte;
for i:= 1 to length(S) do
begin
{nếu S[i] là chữ cái thì đếm tăng cho
clrscr;
S[i] }
write('nhap xau S:');
for ch :=’A’ to ‘Z’ do
readln(S);
{Thông báo số lần xuất hiện của ch}
for ch:='A' to 'Z' do dem[ch]:=0;
end.
for i:=1 to length(s) do
for ch:='A' to 'Z' do
if upcase(s[i])=ch then dem[ch]:=dem[ch]
+1;
for ch:='A' to 'Z' do

if dem[ch]>0 then writeln('ky tu ',ch,' xuat
hien ',dem[ch],' lan');
readln;
end.
2. Hoạt động 2: Thoát máy
Hoạt động của giáo viên
Hoạt động của học sinh
- Thốt máy
 Đánh giá q trình thực hành của HS theo  Lắng nghe đánh giá của giáo viên và rút kinh
các tiêu chí:
- Hồn thành chương trình đã cho theo mẫu
với các bộ dữ liệu khác nhau.
Giáo viên: Phan Thị Thanh Hà

nghiệm


Giáo án tin học 11 – năm học 2019 -2020
- Làm quen với việc hiệu chỉnh chương
trình
Bước 4. Hệ thống câu hỏi/bài tập đánh giá theo các mức đã mô tả
Câu ND1. DT.NB1. Nêu các khái niệm về xâu?
Câu ND1.DT.TH1. Em hãy lấy một ví dụ xâu kí tự đơn giản trong đời sống?
Câu ND1. DT.NB2. Để làm việc với xâu cần xác định những yếu tố nào?
Câu ND1.DT.NB3. Viết cấu trúc khai báo biến xâu?
Câu ND1. DL.VDT1. Viết khai báo xâu họ tên?
Câu ND2. DL.TH1. Điền phép toán so sánh thích hợp vào dấu chấm hỏi:
'thanh' ? 'thach'
'Tin' ? 'Tin hoc'
'Tin hoc' ? 'Tin hoc'

Câu ND2. DL.TH2. Cho xâu S:='hoc sinh lop';
- Cho biết kết quả sau khi thực hiện lệnh: Delete(S,9,4);?
- Cho kết quả: 'hoc sinh' viết thủ tục.
Câu ND2. DL.TH3. Cho s1:='Tin 11'; s2:='Hoc ';
- Cho biết kết quả sau khi thực hiện lệnh: Insert(s2,s1,5);?
- Cho kết quả:’Tin Hoc 11’ viết thủ tục?
Câu ND2. DL.TH4. Cho s:='tin hoc 11';
- Cho biết kết quả sau khi thực hiện lệnh: Copy(s,4,5);?
- Cho kết quả:' hoc ' viết hàm.
Câu ND2. DL.TH5. Cho s:='mon tin hoc 11';
Cho biết Length(S)=?
Câu ND2. DL.TH6. Cho S1:= 'cd';
S2='abcdcd';
Cho biết Pos(S1,S2)=?
Câu ND3. DT.TH1. Bài toán sử dụng mấy biến xâu?
Câu ND3. DT.TH2. Xâu dài hơn là xâu thỏa mãn điều kiện gì?
Câu ND3. DT.TH3. Để tìm độ dài xâu ta sử dụng hàm gì?
Câu ND3. DT.TH4. Lấy ví dụ minh họa?
Câu ND3. DT.TH5. Làm thế nào để duyệt các phần tử của xâu?
Câu ND3. DT.TH6. Tạo xâu S2 bằng cách nào?
Câu ND3. DT.TH7. Làm thế nào để lấy tất cả các chữ số trong xâu S?
Câu ND3.DT.NB1. Sau khi nghiên cứu xong các ví dụ chúng ta biết được những thao tác gì khi
làm việc với xâu?
Câu ND3. TH.VDT1. BT 10 trang 80
Câu ND3. TH.VDT2. Viết chương trình nhập vào một xâu bao gồm các chữ cái in hoa và in
thường. Đưa ra màn hình xâu in hoa tương ứng.
Câu ND3. TH.VDT3. Viết chương trình nhập vào một xâu từ bàn phím. Đếm xem có bao nhiêu
kí tự cách trống có trong xâu. Đưa kết quả ra màn hình.
Câu ND3. TH.VDT4. Viết chương trình nhập vào một xâu từ bàn phím. Đếm xem có bao nhiêu kí
tự giống với kí tự thứ 3 của xâu. Đưa kết quả ra màn hình.

Câu ND3. TH.VDC1. Viết chương trình nhập vào một xâu S và đưa ra màn hình xâu S sau khi
đã được chuẩn hóa.
------------------Hết--------------------

Giáo viên: Phan Thị Thanh Hà



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×