Tải bản đầy đủ (.doc) (5 trang)

Kiểu xâu (tiết 1) Lop11

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 (131.06 KB, 5 trang )

Họ và tên GVHD: Trần Thị Mỹ Dung
Họ và tên SVTT: Phạm Thị Lai
Tổ: Toán_Tin
GIÁO ÁN TIN HỌC 11
Chương IV: KIỂU DỮ LIỆU CÓ CẤU TRÚC
Tiết 29: KIỂU XÂU (tiết 1)
I. MỤC TIÊU
1. Kiến thức:
- Biết được khái niệm kiểu xâu.
- Biết cú pháp khai báo biến xâu.
- Biết lệnh nhập/ xuất xâu và phép gán biến xâu.
- Một số phép toán trên xâu như: ghép xâu, so sánh 2 xâu.
- Biết so sánh mảng 1 chiều và kiểu xâu.
2. Kĩ năng:
- Khai báo biến kiểu xâu .
- Tham chiếu phần tử của xâu.
- Gán giá trị cho biến xâu.
- Ghép xâu và so sánh 2 xâu.
3. Thái độ:
- Nghiêm túc theo dõi, chủ động trả lời các câu hỏi của GV.
II. CHUẨN BỊ
1. Chuẩn bị của GV:
- Sgk Tin học 11, Sách giáo viên Tin học 11, giáo án…
2. Chuẩn bị của HS:
- Sgk Tin học 11, vở ghi, dụng cụ học tập…
III. PHƯƠNG PHÁP DẠY HỌC
1. Phương pháp: thuyết trình, đặt câu hỏi, vấn đáp gợi mở,…
2. Phương tiện: giáo án, sách giáo khoa, sách giáo viên, bảng, phấn…
IV. TIẾN TRÌNH BÀI HỌC
1. Ổn định lớp: giữ trật tự, kiểm tra sỉ số
2. Bài cũ: <Không kiểm tra bài cũ>


3. Bài mới:
HOẠT ĐỘNG CỦA GIÁO VIÊN VÀ HS NỘI DUNG
 Hoạt động 1: Đặt vấn đề
- GV hướng dẫn HS tìm hiểu ý nghĩa của xâu
kí tự , bằng cách đặt vấn đề: Viết chương trình
nhập họ tên của 1 HS và đặt câu hỏi:
• Ta sẽ chọn kiểu dữ liệu nào cho biến
lưu trữ họ tên HS (trong các kiểu dữ
liệu đã học như integer, real, char,
logic, mảng…)?
• Kiểu char có thể sủ dụng được
không?
• Kiểu mảng một chiều có được
không?Nếu được thì khai báo như thế
nào?
- HS lắng nghe và trả lời.
- GV nhấn mạnh: biến kiểu char chỉ lưu trữ
được một kí tự mà thôi, trong trường hợp này
thì kiểu mảng một chiều có thể sử dụng được
cùng với 1 vòng for (vì chỉ có 1 HS). GV sửa
lại thành 30 HS và hỏi:
• Kiểu mảng một chiều có thể sử dụng
được nữa không?
• Nếu được, ta khai báo như thế nào?
• Có những khó khăn gì gặp phải?
- HS lắng nghe và trả lời.
 Hoạt động 2: Khái niệm xâu.
- GV khẳng định: với mỗi biến mảng một
chiều khi khai báo, ta chỉ có thề lưu trữ được
họ tên của 1 HS. Cho nên, khi cần khai báo

tên của 30 HS, ta phải sử dụng đến 30 biến
mảng một chiều. Việc này rất mất thời gian và
chương trình trở nên rất dài dòng. Để khắc
phục nhược điểu này, ta sẽ dùng một kiểu dữ
liệu khác. Đó là kiểu xâu.
- HS lắng nghe .
- GV hỏi: vậy xâu là gì ?
- HS lắng nghe và trả lời.
- GV giải thích khái niệm.
- HS quan sát và ghi bài.
- GV:
• Cho xâu s là ‘Duc Linh’,’ ’,’’.
• Hỏi:: tên xâu ?độ dài là bao nhiêu ?
- HS lắng nghe, suy nghĩ và trả lời.
- GV kết luận và nhấn mạnh: xâu rỗng là
xâu có độ dài bằng 0, xâu có kí tự khoảng
trắng thì có độ dài bằng 1 .
- HS quan sát và ghi bài.
Tiết 29: KIỂU XÂU (tiết 1)
I. Khái niệm xâu và khai báo xâu.
1. Khái niệm xâu.
- Xâu là dãy các kí tự trong bộ mã ASCII, mỗi kí tự
được gọi là một phần tử của xâu.
- Số kí tự trong một 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.
VD:
S: ‘Duc Linh’ => tên xâu là S, độ dài = 8.
A:‘ ‘ => độ dài = 1.
B:‘’ => độ dài = 0.
 Hoạt động 3: Khai báo xâu

- GV đặt vấn đề :
• Khi viết một chương trình bằng
Pascal thì bước đầu tiên ta làm gì ?
• Khi khai báo ta sẽ dùng từ khóa
nào?
• Gọi 1 HS cho ví dụ.
- HS lắng nghe và trả lời.
- GV kết luận: tương tự như mọi kiểu dữ liệu
khác. Biến kiểu xâu cũng được khai báo và cú
pháp khai báo là: var <tên biến xâu> :
string[độ dài lớn nhất của xâu];
- GV cho ví dụ:
• Var a: string[30];
• Var b: string.
• Var c: string;
• Hỏi: có ví dụ nào sai không? Nếu
không khai báo độ dài tối đa thì độ
dài mặc định là bao nhiêu?
• GV giải thích thêm khi khai báo một
biến xâu, tốt nhất ta nên khai báo độ
dài tối đa của nó để tiêt kiệm vùng
nhớ.
- HS lắng nghe và trả lời.
- GV hỏi: Có mảng 1 chiều A gồm 20 phần tử
vậy để tham chiếu tới phần tử thứ 9 của mảng
ta làm như thế nào?
- HS lắng nghe và trả lời.
- GV khẳng định: xâu cũng có thể được xem
như mảng một chiều vậy khi tham chiếu tới
phần tử thứ i của xâu cũng tương tự như mảng

một chiều. Và cho ví dụ.
- GV :
• Cho ví dụ: var x: integer;
• Hỏi: Để gán giá trị cho biến x, ta
viết ?(cho ví dụ cụ thể).=>x:=2;
- HS lắng nghe và trả lời.
- GV kết luận: kiểu dữ liệu xâu cũng có lệnh
gán. Cho ví dụ: s1:=’11A15’; s2=’2011’; Và
nhấn mạnh: mọi giá trị khi gán cho biến xâu
phải được viết trong dấu ‘’.Khi chạy chương
trình thì không cần dấu ‘’. Cho thêm một số ví
dụ và hỏi HS đúng hay sai ?
2.Khai báo xâu.
Var <tên biến xâu> : string[Độ dài lớn nhất của
xâu];
VD:
Var a: string[30]; (đ)
Var b:string[256]; (s vì 256 > 255)
Var c: string; (đ)

*Tham chiếu đến phần tử của xâu
VD:
S:=’abcdef’ => S[3] = ‘c’;
*Gán giá trị cho biến xâu:
VD:
Var s1,s2: string;
n: interger;
s1:= ’11A15’; (đ)
s2:= ’2011’; (đ)
- HS lắng nghe và trả lời.

 Hoạt động 4: Nhập và xuất dữ liệu cho biến
xâu.
- GV hỏi: khi cần nhập dữ liệu từ bàn phím
ta dùng câu lệnh gì? Câu lệnh nào dùng để
xuất kết quả ra màn hình ?
- HS lắng nghe và trả lời.
- GV: tương tự đối với xâu ta cũng dùng
read/readln để nhập dữ liệu từ bàn phím và
write/writeln để xuất kết quả ra màn hình.
- HS lắng nghe,quan sát và chép bài.
- GV cho ví dụ và hỏi kết quả: sau khi viết
câu lệnh write(hoten,lop);
 Hoạt động 5:Phép ghép xâu.
- GV hỏi: khi thực hiện cộng hai giá trị kiểu
integer thì kết quả sẽ mang kiểu dữ liệu là gi ?
- HS lắng nghe và trả lời.
- GV: tương tự khi cộng hai giá trị kiểu xâu
sẽ cho ta kết quả mang kiểu xâu. Cho ví dụ.
S1:=’Lop 11A15’; S2:=’rat ngoan’;
S:=S1 + S2;
Write(S); => xuất ra kết quả là gì ?
- HS lắng nghe và ghi bài.
- GV: cho thêm một ví dụ khác có nhiều hơn
2 xâu để hỏi kết quả.
- GV đặt vấn đề bằng ví dụ: cho các biểu thức
sau: a > b, 2=2, x >= y.Hỏi: Các biểu thức
này sử dụng phép toán gì? Chúng ta còn có
các phép toán so sánh nào khác nữa không?
Hãy kể tên ?
- HS lắng nghe và trả lời.

- GV : tương tự xâu cũng sử dụng các phép
so sánh này đó để so sánh 2 xâu. Vậy: Khi so
sánh 2 xâu ta sẽ áp dụng những quy tắc nào?
s2:=5; (sai, vì s2 là kiểu xâu)
n:= 2; (đ)
s1 := n; (sai, vì khác kiểu dữ liệu)
3. Nhập xuất dữ liệu cho biến xâu.
- Nhập dữ liệu: read/readln.
- Xuất dữ liệu: write/writeln.
VD:
Var lop,hoten: string;
readln(hoten);
lop:=’11A15’;
write(hoten,lop);
II.Các thao tác xử lí xâu.
1.Phép ghép xâu.
Dùng dấu cộng (+) để ghép nhiều xâu lại thành một.
VD:
S1:=’Lop 11A15’; S2:=’rat ngoan’;
S:=S1 + S2;
Write(S); => xuất ra kết quả là gì ?
=>S=’Lop 11A15rat ngoan’;
A:= ‘1+ 9 ’ + ‘ -2’ + ’=?’;
=>A=’1+9-2=?’;
2. Các phép so sánh xâu:
=, < , >, <=, >=, < >
*Quy tắc so sánh xâu:
- HS lắng nghe, suy nghĩ và trả lời.
- GV giải thích từng quy tắc và mỗi quy tắc
cho mỗi ví dụ. Có thể gọi HS tự cho thêm ví

dụ.
- HS làm ví dụ, xem lại bảng mã ASCII tr169
TH10.
- Xâu A > xâu B nếu kí tự đầu tiên khác nhau giữa
chúng kể từ trái sang trong xâu A có mã ASCII lớn
hơn.
VD: ‘Ong’ > ‘Ba’; ‘Cha’ < ‘Me’; ’cha’>’Cha’
- Xâu A < xâu B nếu A là đoạn đầu của B và A,B có
độ dài khác nhau.
VD: ‘Anh’ < ‘Anh em’;’Tin’ < ‘Tin hoc’
- Xâu A = xâu B nếu chúng giống nhau hoàn toàn.
VD:’Le Loi’ = ‘Le Loi’
4. Củng cố:
- Khai báo biến xâu, độ dài xâu.
- Tham chiếu tới một phần tử của xâu.
- Gán giá trị cho biến xâu.
- Phép ghép xâu và các phép so sánh xâu.
5. Hướng dẫn học sinh tự học ở nhà:
- Xem trước các thủ tục và hàm chuẩn xử lí xâu.
V. RÚT KINH NGHIỆM:
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………
………………………………………………………………………………………………………

Phê duyệt của giáo viên hướng dẫn Ngày……tháng……năm 2011
Sinh viên ký tên

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

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