Tải bản đầy đủ (.ppt) (16 trang)

Slide tin học 11 bài kiểu dữ liệu xâu _ THPT Lê Quý Đôn

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 (682.29 KB, 16 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

Bài giảng

KIỂU DỮ LIỆU XÂU
Chương trình Tin học, Lớp 11

TRƯỜNG TRUNG HỌC PHỔ THƠNG CHUN LÊ QUÝ ĐÔN
Thành phố Điện Biên Phủ, Tỉnh Điện Biên


Bài toán đặt vấn đề:
Nhập vào họ tên của hai học sinh, in ra màn hình họ tên dài hơn?

A

T

H

U

Y

B

N

G

U



Y

A
E

N

Hãy xác định
kiểu dữ liệu
của hai biến
A,B?

N

H
H

A


1. Khái niệm
Xâu là dãy các kí tự trong bộ mã ASCII.
Ví dụ:

A

T

I


N

1

2

3

H
4

O

5

6

C
7

Trong đó:
- Tên xâu: A;
- Mỗi kí tự gọi là một phần tử của xâu;
- Độ dài của xâu (số kí tự trong xâu): 7;
- Khi tham chiếu đến kí tự thứ i của xâu ta viết A[i].
Ví dụ: A[5]=‘H’.


2. Khai báo kiểu dữ liệu xâu (trong Pascal)


Var <tên biến> : String[độ dài lớn nhất];
Ví dụ: Var hoten: String[26];
- Khi khai báo xâu có thể bỏ qua phần khai báo [độ dài
lớn nhất], khi đó độ dài lớn nhất của xâu sẽ nhận giá trị
ngầm định là 255.
Ví dụ: Var chuthich :String;


3. Các thao tác xử lí xâu
a. Biểu thức xâu: Là biểu thức trong đó các tốn hạng là các biến
xâu, biến kí tự.
* Phép ghép xâu: kí hiệu “+” dùng để ghép nhiều xâu thành một xâu
Ví dụ:

‘ Dien’ + ‘ Bien’

 ‘Dien Bien’

* Phép so sánh: =,<>, <,<=,>,>=
* Quy ước:
- Xâu rỗng là xâu ‘’
- Xâu A = B nếu chúng giống hệt nhau.
- Xâu A > B nếu:
+ Kí tự đầu tiên khác nhau giữa
chúng ở xâu A có mã ASCII lớn hơn ở
xâu B.
+ Xâu B là đoạn đầu của xâu A.

Ví dụ

‘Tin hoc’ = ‘Tin hoc’
‘Dien Bien’ > ‘DienBien’
‘Xau’ < ‘Xau ki tu’


b. Các thủ tục và hàm chuẩn xử lí xâu
THỦ TỤC
1. Delete(S,vt,n)

2. Insert(S1,S2,vt)

Ý NGHĨA

VÍ DỤ

Xố n kí tự của xâu S
bắt đầu từ vị trí vt.

S = ‘Dien Bien’
Delete(S,1,5)
 ‘Bien’

Chèn xâu S1 vào xâu S2
bắt đầu từ vị trí vt.

S1=‘1’ S2=‘Hinh .2’
Insert(s1,s2,6)
 ’Hinh 1.2’



HÀM
1. Copy(S,vt,n)

2. Length(S)

Ý NGHĨA
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
Cho giá trị là độ dài của
xâu S

VÍ DỤ
S = ‘Tin hoc’
Copy(S,5,3)= ‘hoc’
S = ‘Xin chao’
Length(S) = 8

3. Pos(S1,S2)

Cho vị trí xuất hiện đầu
tiên của xâu S1 trong
xâu S2

S1=‘1’ S2=‘Hinh 1.2’
Pos(S1,S2) = 6

4. UpCase(ch)

Chuyển kí tự ch thành

chữ hoa

Ch=‘a’
UPCase(ch) = ‘A’


4. Một số ví dụ
1 Nhập vào họ tên của hai học sinh, in ra màn hình họ tên dài hơn?
CÁC BƯỚC:
1. Khai báo xâu
2. Nhập xâu

3. Xử lí xâu

THỂ HIỆN BẰNG PASCAL
Var a,b: string;
BEGIN
Write(‘ Nhap xau ho ten thu nhat :’); Readln(a);
Write(‘Nhap xau ho ten thu hai :’); Readln(b);
IF Length(a)>Length(b) Then write(a)
else write(b);
Readln;
END.



2

Nhập vào hai xâu từ bàn phím, kiểm tra xem kí tự đầu tiên
của xâu thứ nhất có trùng với kí tự cuối cùng của xâu thứ hai

khơng?
CÁC BƯỚC:

1. Khai báo xâu : A,B
2. Nhập xâu

Dựa vào các
bước bên, hãy
hoàn thiện
chương trình?

3. Xử lí xâu, trong đó:
Kí tự đầu tiên của xâu A:

A[1]

Kí tự cuối cùng của xâu B: B[x] trong đó X là độ dài của xâu B



Hãy nhớ!
‘Xin chao cac ban!’
Var S : string[30]

S[1] = ‘X’

 Xâu là dãy các kí tự trong bộ mã
ASCII.
 Khai báo: tên xâu, độ dài lớn
nhất của xâu.

 Tham chiếu phần tử của xâu:
Tên xâu[chỉ số]
 Các thao tác xử lí thường dùng:
+ Phép ghép xâu, so sánh xâu;
+ Các thủ tục và hàm chuẩn.


Câu 1. Trong ngơn ngữ lập trình pascal, thủ
tục chèn xâu S1 vào xâu S2 bắt đầu từ vị trí
vt được viết.
A) Insert(vt, S1,S2)
B) Insert(S1,S2,vt)
C) Insert( S1,vt,S2)
D) Insert(S2,S1,vt)
Đáp án của bạn chính xác -Đáp án của bạn chưa chính xác
Đáp án của bạn chính xác
Đáp án của bạn chưa chính xác
Click chuộtCâutiếp tục của bạn là:
để trả tục
-- Click chuột để tiếp tục
Click chuộtCâutiếp lời của bạn là:
để trả lời
Click chuột để tiếp tục
CâuBạn lời chưa chính xác
Câu trả đã trả lời đúng
trả lời chưa đúng
đã trả
Câu trảBạnđúng lờichính xác
Câu trả lời đúng
lời

Bạn phải trả lời câu hỏi này
Bạn phải trả lời câu hỏi này

OK

Làm lại


Câu 2. Trong ngơn ngữ lập trình pascal,
xâu có ký tự tối đa.
A) 8 ký tự
B) 256 ký tự
C) 16 ký tự
D) 255 ký tự
Đáp án của bạn chính xác -Đáp án của bạn chưa chính xác
Đáp án của bạn chính xác
Đáp án của bạn chưa chính xác
Click chuộtCâutiếp tục của bạn là:
để trả tục
-- Click chuột để tiếp tục
Click chuộtCâutiếp lời của bạn là:
để trả lời
Click chuột để tiếp tục
CâuBạn lời chưa chính xác
Câu trả đã trả lời đúng
trả lời chưa đúng
đã trả
Câu trảBạnđúng lờichính xác
Câu trả lời đúng
lời

Bạn phải trả lời câu hỏi này
Bạn phải trả lời câu hỏi này

OK

Làm lại


Câu 3. Trong ngơn ngữ lập trình pascal, hàm
Upcase(ch) cho biết kết quả là:
A) Chữ cái in hoa tương ứng với ch
B) Xâu ch gồm toàn chữ hoa
C) Xâu ch toàn chữ thường
D) Biến xâu ch thành chữ thường
Đáp án của bạn chính xác -Đáp án của bạn chưa chính xác
Đáp án của bạn chính xác
Đáp án của bạn chưa chính xác
Click chuộtCâutiếp tục của bạn là:
để trả tục
-- Click chuột để tiếp tục
Click chuộtCâutiếp lời của bạn là:
để trả lời
Click chuột để tiếp tục
CâuBạn lời chưa chính xác
Câu trả đã trả lời đúng
trả lời chưa đúng
đã trả
Câu trảBạnđúng lờichính xác
Câu trả lời đúng
lời

Bạn phải trả lời câu hỏi này
Bạn phải trả lời câu hỏi này

OK

Làm lại


Quiz
Your Score {score}

Max Score {max-score}

Number of Quiz {total-attempts}
Attempts

Question Feedback/Review Information Will
Question Feedback/Review Information Will
Appear Here
Appear Here
Continue

Review Quiz



×