Bài 12. Kiểu xâu
Chia sẻ bởi Nguyễn Thị Kim |
Ngày 10/05/2019 |
49
Chia sẻ tài liệu: Bài 12. Kiểu xâu thuộc Tin học 11
Nội dung tài liệu:
tin học 11
người thực hiện: nguyễn thị kim
Kiểm tra bài cũ
Câu 1: Hãy nêu cách khai báo trực tiếp và gián tiếp mảng 1chiều?
Câu 2: Hãy chuyển cách khai báo mảng 1chiều sau từ dạng trực tiếp sang dạng gián tiếp?
Var ArrayInt : Array[1..100] of integer;
Câu 3: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp, việc khai báo mảng 1 chiều nào sau đây là đúng:
Type 1chieu=array[1…100] of integer;
Type 1chieu=array[1-100] of integer;
Type 1chieu=array(1..100) of integer;
Type Mchieu=array[1..100] of integer;
Trả lời
Câu 1: - Cách khai báo trực tiếp:
Var: Array [kiểu chỉ số] of ;
- Cách khai báo gián tiếp:
Type = Array [kiểu chỉ số] of ;
Var: ;
Câu 2: Chuyển khai báo mảng 1chiều sau từ dạng trực tiếp sang dạng gián tiếp: Type B = Array[1..100] of integer;
Var ArrayInt : B ;
Câu 3: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp, việc khai báo mảng 1 chiều nào sau đây là đúng:
Type 1chieu=array[1…100] of integer;
Type 1chieu=array[1-100] of integer;
Type 1chieu=array(1..100) of integer;
Type Mchieu=array[1..100] of integer;
TIẾT 28: KIỂU DỮ LIỆU XÂU(t1)
* Một số khái niệm:
- Xâu là một dãy các kí tự trong bảng mã ASCII
* Ví dụ:
‘Bach Khoa’
‘KI SU’
‘2010 la nam Canh Dan’
- Mỗi kí tự gọi là một …………. của xâu
- Số lượng kí tự trong xâu được gọi là ……………………
- Xâu có độ dài bằng 0 được gọi là …………..
- Tham chiếu tới phần tử của xâu được xác định thông qua ............. của phần tử trong xâu.
- Chỉ số của phần tử của xâu thường được đánh số thứ tự bắt đầu từ 1
phần tử
độ dài của xâu
xâu rỗng
chỉ số
Tiết 28 : Kiểu xâu
[chỉ số]
Ví dụ: Biến Hoten lưu trữ giá trị hằng xâu ‘Le Chieu Khang’
Hoten [6] cho ta kí tự ‘i’ là kí tự thứ sáu của biến xâu Hoten
Tiết 28 : Kiểu xâu
- Trong ngôn ngữ lập trình Pascal, để truy cập tới từng phần tử của xâu, ta viết:
Tiết 28 : Kiểu xâu
1. Khai báo
- Biến kiểu xâu có thể khai báo như sau:
Var : String [độ dài lớn nhất của xâu];
- Ví dụ:
Var Ten : String [10];
Var Ho_dem : String [25];
Var Que : String;
- Chú ý:
- Nếu không khai báo độ dài tối đa của biến xâu thì độ dài ngầm định của xâu là 255.
- Độ dài lớn nhất của xâu là 255 kí tự.
- Hằng xâu kí tự được đặt trong cặp nháy đơn ‘’
1. Khai báo:
Var : String [độ dài lớn nhất của xâu];
2. Các thao tác xử lí xâu:
a. Phép ghép xâu:
Được sử dụng để ghép nhiều xâu thành 1 xâu;
‘Ha’
‘Ha Noi’
‘Noi’
+
Kí hiệu là dấu (+)
Có thể thực hiện phép ghép xâu với hằng và biến xâu.
* Ví dụ:
‘ nGuyen vaN A’
‘Nguyen Van A’
Tiết 28 : Kiểu xâu
Chúng ta cần hiệu chỉnh như thế nào?
1. Khai báo:
Var : String [độ dài lớn nhất của xâu];
2. Các thao tác xử lí xâu:
a. Phép ghép xâu:
Kí hiệu là dấu (+)
b. Phép so sánh:
<, <=, >, >=, =, <>
Pascal tự động so sánh lần lượt từng kí tự từ trái sang phải;
Xâu A lớn hơn 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.
* Ví dụ:
‘AB’
‘AC’
<
‘ABC’
‘ABB’
>
Nếu A và B có độ dài khác nhau, A là đoạn đầu của B thì A* Ví dụ:
‘Ha Noi’
‘Ha Noi Viet Nam’
<
Hai xâu bằng nhau nếu chúng giống nhau hoàn toàn.
* Ví dụ:
‘Ha Noi’
‘Ha Noi’
=
Tiết 28 : Kiểu xâu
1. Khai báo:
2. Các thao tác xử lí xâu:
*Một số thủ tục chuẩn trong xử lí xâu:
c. Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
* Ví dụ:
‘ABCDEF’
Delete(st,4,3)
‘ABC’
‘HA NOI’
Delete(st,3,4)
‘HA’
Tiết 28 : Kiểu xâu
?
?
1. Khai báo:
2. Các thao tác xử lí xâu:
*Một số thủ tục chuẩn trong xử lí xâu:
c. Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
* Ví dụ:
‘LE MY’
‘N’
‘HA NOI’
d. insert(s1,s2,vt): chèn xâu s1 vào xâu s2, bắt đầu từ vị trí vt
insert(s1,s2,4 )
‘HA ’
‘HA OI’
‘LE HA MY’
insert(s1,s2,4 )
Tiết 28 : Kiểu xâu
?
?
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
Copy(st,4,11 )
Copy(st,1,5 )
‘TP HO CHI MINH’
‘QUANG BINH’
‘QUANG’
‘HO CHI MINH’
Tiết 28 : Kiểu xâu
?
?
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
length(st)
‘TP HO CHI MINH’
‘QUANG BINH’
10
14
f. length(St): cho giá trị độ dài xâu St
length(st)
Tiết 28 : Kiểu xâu
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
pos(‘CHI’, S2)
‘TPHOCHIMINH’
‘QUANG BINH’
0
5
f. length(St): cho giá trị độ dài xâu St
g. pos(S1,S2,): cho vị trí xuất hiện đầu tiên của xâu S1 trong xâu S2
pos(‘M’, S2)
Tiết 28 : Kiểu xâu
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
upcase(ch)
‘h’
‘M’
‘M’
‘H’
f. length(St): cho giá trị độ dài xâu St
g. pos(S1,S2,): cho vị trí xuất hiện đầu tiên của S1 trong S2
h. upcase(ch): cho chữ cái viết hoa trong tương ứng với chữ cái thường trong ch
upcase(ch)
Tiết 28 : Kiểu xâu
Tiết 28 : Kiểu xâu
Bài tập trắc nghiệm
Bài 1: Cho đoạn chương trình sau:
Var ch, sh: string[55]
Begin
ch:=‘Ha Noi’;
sh:=‘Ho Chi Minh’;
Delete(ch, 3, 1);
Insert(‘City’, sh, 7);
End.
? Hãy xác định giá trị của các biến ch, sh sau khi thực hiện xong đoạn chương trình trên.
bài tập ứng dụng
Bài 2: Cho đoạn chương trình sau:
Var kt, a: string; b, c: byte; d: char;
Begin
kt:=‘Xuan Mau Ty’;
a:=copy(kt, 6, 3);
b:=length(kt);
c:=pos(‘a’, kt);
d:=upcase(kt[4]);
End.
? Hãy xác định giá trị của các biến kt, a, b, c, d sau khi thực hiện xong đoạn chương trình trên.
bài tập ứng dụng
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn trong xử lí xâu:
1. Khai báo:
*Một số thủ tục chuẩn trong xử lí xâu:
Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
insert(s1,s2,vt): chèn xâu s1 vào xâu s2, bắt đầu từ vị trí vt
copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
length(St): cho giá trị độ dài xâu St
pos(S1,S2,): cho vị trí xuất hiện đầu tiên của S1 trong S2
upcase(ch): cho chữ cái viết hoa trong tương ứng với chữ cái thường trong ch
Var : String [độ dài lớn nhất của xâu ];
Tiết 28 : Kiểu xâu
Bài tập về nhà
Làm bài tập: 10/80- SGK
Bài học đến đây đã kết thúc rồi!
Chúc chị em 08/03 vui, khoẻ, trẻ,
đẹp, hạnh phúc và thành đạt!
người thực hiện: nguyễn thị kim
Kiểm tra bài cũ
Câu 1: Hãy nêu cách khai báo trực tiếp và gián tiếp mảng 1chiều?
Câu 2: Hãy chuyển cách khai báo mảng 1chiều sau từ dạng trực tiếp sang dạng gián tiếp?
Var ArrayInt : Array[1..100] of integer;
Câu 3: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp, việc khai báo mảng 1 chiều nào sau đây là đúng:
Type 1chieu=array[1…100] of integer;
Type 1chieu=array[1-100] of integer;
Type 1chieu=array(1..100) of integer;
Type Mchieu=array[1..100] of integer;
Trả lời
Câu 1: - Cách khai báo trực tiếp:
Var
- Cách khai báo gián tiếp:
Type
Var
Câu 2: Chuyển khai báo mảng 1chiều sau từ dạng trực tiếp sang dạng gián tiếp: Type B = Array[1..100] of integer;
Var ArrayInt : B ;
Câu 3: Trong ngôn ngữ lập trình Pascal, về mặt cú pháp, việc khai báo mảng 1 chiều nào sau đây là đúng:
Type 1chieu=array[1…100] of integer;
Type 1chieu=array[1-100] of integer;
Type 1chieu=array(1..100) of integer;
Type Mchieu=array[1..100] of integer;
TIẾT 28: KIỂU DỮ LIỆU XÂU(t1)
* Một số khái niệm:
- Xâu là một dãy các kí tự trong bảng mã ASCII
* Ví dụ:
‘Bach Khoa’
‘KI SU’
‘2010 la nam Canh Dan’
- Mỗi kí tự gọi là một …………. của xâu
- Số lượng kí tự trong xâu được gọi là ……………………
- Xâu có độ dài bằng 0 được gọi là …………..
- Tham chiếu tới phần tử của xâu được xác định thông qua ............. của phần tử trong xâu.
- Chỉ số của phần tử của xâu thường được đánh số thứ tự bắt đầu từ 1
phần tử
độ dài của xâu
xâu rỗng
chỉ số
Tiết 28 : Kiểu xâu
Ví dụ: Biến Hoten lưu trữ giá trị hằng xâu ‘Le Chieu Khang’
Hoten [6] cho ta kí tự ‘i’ là kí tự thứ sáu của biến xâu Hoten
Tiết 28 : Kiểu xâu
- Trong ngôn ngữ lập trình Pascal, để truy cập tới từng phần tử của xâu, ta viết:
Tiết 28 : Kiểu xâu
1. Khai báo
- Biến kiểu xâu có thể khai báo như sau:
Var
- Ví dụ:
Var Ten : String [10];
Var Ho_dem : String [25];
Var Que : String;
- Chú ý:
- Nếu không khai báo độ dài tối đa của biến xâu thì độ dài ngầm định của xâu là 255.
- Độ dài lớn nhất của xâu là 255 kí tự.
- Hằng xâu kí tự được đặt trong cặp nháy đơn ‘’
1. Khai báo:
Var
2. Các thao tác xử lí xâu:
a. Phép ghép xâu:
Được sử dụng để ghép nhiều xâu thành 1 xâu;
‘Ha’
‘Ha Noi’
‘Noi’
+
Kí hiệu là dấu (+)
Có thể thực hiện phép ghép xâu với hằng và biến xâu.
* Ví dụ:
‘ nGuyen vaN A’
‘Nguyen Van A’
Tiết 28 : Kiểu xâu
Chúng ta cần hiệu chỉnh như thế nào?
1. Khai báo:
Var
2. Các thao tác xử lí xâu:
a. Phép ghép xâu:
Kí hiệu là dấu (+)
b. Phép so sánh:
<, <=, >, >=, =, <>
Pascal tự động so sánh lần lượt từng kí tự từ trái sang phải;
Xâu A lớn hơn 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.
* Ví dụ:
‘AB’
‘AC’
<
‘ABC’
‘ABB’
>
Nếu A và B có độ dài khác nhau, A là đoạn đầu của B thì A* Ví dụ:
‘Ha Noi’
‘Ha Noi Viet Nam’
<
Hai xâu bằng nhau nếu chúng giống nhau hoàn toàn.
* Ví dụ:
‘Ha Noi’
‘Ha Noi’
=
Tiết 28 : Kiểu xâu
1. Khai báo:
2. Các thao tác xử lí xâu:
*Một số thủ tục chuẩn trong xử lí xâu:
c. Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
* Ví dụ:
‘ABCDEF’
Delete(st,4,3)
‘ABC’
‘HA NOI’
Delete(st,3,4)
‘HA’
Tiết 28 : Kiểu xâu
?
?
1. Khai báo:
2. Các thao tác xử lí xâu:
*Một số thủ tục chuẩn trong xử lí xâu:
c. Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
* Ví dụ:
‘LE MY’
‘N’
‘HA NOI’
d. insert(s1,s2,vt): chèn xâu s1 vào xâu s2, bắt đầu từ vị trí vt
insert(s1,s2,4 )
‘HA ’
‘HA OI’
‘LE HA MY’
insert(s1,s2,4 )
Tiết 28 : Kiểu xâu
?
?
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
Copy(st,4,11 )
Copy(st,1,5 )
‘TP HO CHI MINH’
‘QUANG BINH’
‘QUANG’
‘HO CHI MINH’
Tiết 28 : Kiểu xâu
?
?
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
length(st)
‘TP HO CHI MINH’
‘QUANG BINH’
10
14
f. length(St): cho giá trị độ dài xâu St
length(st)
Tiết 28 : Kiểu xâu
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
pos(‘CHI’, S2)
‘TPHOCHIMINH’
‘QUANG BINH’
0
5
f. length(St): cho giá trị độ dài xâu St
g. pos(S1,S2,): cho vị trí xuất hiện đầu tiên của xâu S1 trong xâu S2
pos(‘M’, S2)
Tiết 28 : Kiểu xâu
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn chuẩn trong xử lí xâu:
1. Khai báo:
* Ví dụ:
e. copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
upcase(ch)
‘h’
‘M’
‘M’
‘H’
f. length(St): cho giá trị độ dài xâu St
g. pos(S1,S2,): cho vị trí xuất hiện đầu tiên của S1 trong S2
h. upcase(ch): cho chữ cái viết hoa trong tương ứng với chữ cái thường trong ch
upcase(ch)
Tiết 28 : Kiểu xâu
Tiết 28 : Kiểu xâu
Bài tập trắc nghiệm
Bài 1: Cho đoạn chương trình sau:
Var ch, sh: string[55]
Begin
ch:=‘Ha Noi’;
sh:=‘Ho Chi Minh’;
Delete(ch, 3, 1);
Insert(‘City’, sh, 7);
End.
? Hãy xác định giá trị của các biến ch, sh sau khi thực hiện xong đoạn chương trình trên.
bài tập ứng dụng
Bài 2: Cho đoạn chương trình sau:
Var kt, a: string; b, c: byte; d: char;
Begin
kt:=‘Xuan Mau Ty’;
a:=copy(kt, 6, 3);
b:=length(kt);
c:=pos(‘a’, kt);
d:=upcase(kt[4]);
End.
? Hãy xác định giá trị của các biến kt, a, b, c, d sau khi thực hiện xong đoạn chương trình trên.
bài tập ứng dụng
2. Các thao tác xử lí xâu:
*Một số hàm chuẩn trong xử lí xâu:
1. Khai báo:
*Một số thủ tục chuẩn trong xử lí xâu:
Delete (st,vt,n): xoá n kí tự của biến xâu st, bắt đầu từ vị trí vt
insert(s1,s2,vt): chèn xâu s1 vào xâu s2, bắt đầu từ vị trí vt
copy(St,vt,n): Sao chép từ xâu st n kí tự liên tiếp bắt đầu từ vị trí vt
length(St): cho giá trị độ dài xâu St
pos(S1,S2,): cho vị trí xuất hiện đầu tiên của S1 trong S2
upcase(ch): cho chữ cái viết hoa trong tương ứng với chữ cái thường trong ch
Var
Tiết 28 : Kiểu xâu
Bài tập về nhà
Làm bài tập: 10/80- SGK
Bài học đến đây đã kết thúc rồi!
Chúc chị em 08/03 vui, khoẻ, trẻ,
đẹp, hạnh phúc và thành đạt!
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Nguyễn Thị Kim
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)