Thuat toan ve string

Chia sẻ bởi Lê Phước Hoà | Ngày 16/10/2018 | 37

Chia sẻ tài liệu: thuat toan ve string thuộc Tin học 9

Nội dung tài liệu:

Dữ liệu kiểu String


I / Định nghĩa :
Xâu kí tự là một cấu trúc dữ liệu , quản lý một dãy liên tiếp các kí tự . Số lượng các kí tự của xâu được gọi là độ dài của xâu . Để biểu diễn một hằng là 1 xâu kí tự , người ta viết xâu kí tự này giữa 2 dấu nháy
Thí dụ :
‘Tran van Thanh’ là hằng có kiểu xâu kí tự và có độ dài bằng 14.

II / Khai báo :
Type Tên_Xâu = String[ n] ; { n là độ dài tối đa của xâu có kiểu Tên_Xâu }
Var Tên_biến : Tên_Xâu;

Thí dụ :
Type STR1 = String[28];
Var S1 : STR1;
S2 : String;

Biến S1 : Có kiểu xâu kí tự độ dài tối đa 28 kí tự .
Biến S2 : Có kiểu xâu kí tự độ dài tối đa 255 kí tự .
Chú ý Truy nhập kí tự thứ i trong xâu S ( Kể từ trái qua phải ) thông qua S[i] . Đặc biệt có 1 trong 2 cách tổ chức xâu , người ta qui định S[0] là kí tự chỉ độ dài của xâu .Thí dụ :
S 1:= ‘Tran van Thanh’ thì S[0] là #14 { Ord( S[0] ) =14 }
Kích thước của biến S1 là 12+1=13 Byte ; biến S2 chiếm 255+1=256 Byte.


III / Các phép toán - Các thủ tục và hàm xử lí xâu :

1 ) Các phép toán :
+ Phép gán : Hai xâu cùng kiểu có thể gán giá trị cho nhau
+ Phép cộng : S1 = ‘Trần’;
S2 = ‘ văn Thanh’;
S = S1+S2 thì S = ‘Trần văn Thanh’
+ Các phép so sánh =, >, <
@ S1 = S2 nếu chúng cùng kiểu và từng kí tự tương ứng của chúng như nhau
@ Xét S1 , S2 cùng kiểu , có độ dài tương ứng là L1,L2 .Ta nói S1 - Hoặc N - Hoặc L1
2 ) Các Hàm :

+ Length(S) Cho giá trị kiểu Integer là độ dài của xâu S .
Length(S) = Ord(S[0])-48
Thí dụ X:= Length(‘ABCD’) Thì X=4

+ {Function Pos (S1,S2 : String): Byte;}
Cho giá trị kiểu Byte là vị trí bắt đầu kể từ trái qua phải thấy S1 trong S2
Thí dụ S2 := ‘ABCDE’ S1 := ‘BC’ Pos(S1,S2) sẽ là 2

+ {Function Copy(S: String; I: Integer; N: Integer): String;}
Hàm này trả giá trị là một xâu con của xâu S , đó là xâu gồm n kí tự liên tiếp của xâu S , kể từ kí tự thứ i trở đi
Thí dụ S1 := ‘ABCDE’ thì Copy(S1,2,3) sẽ là xâu ‘BCD’

+ {Function Concat (S1,S2,..,Sn : String): String}
Nối các xâu kí tự S1,S2,..,Sn thành 1 xâu
Thí dụ S2 := ‘ABCDE’ S1 := ‘BC’ thì Concat(S1,S2) sẽ là ‘BCABCDE’

2 ) Các thủ tục :

+ {Procedure Delete(var S: String; I: Integer; N:Integer)}
Xoá N kí tự liên tiếp trong xâu S ,
* 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ẻ: Lê Phước Hoà
Dung lượng: 93,00KB| Lượt tài: 0
Loại file: DOC
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)