Các thủ tục và hàm chuẩn xử lý xâu ký tự

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 60 - 63)

Trong Turbo Pascal có một số thủ tục và hàm để xử lý xâu ký tự như sau:

Length (St) là hàm cho ta độ dài của xâu ký tự St. Ví dụ: với St:= 'Tin hoc'; thì length(St) có giá trị bằng 7.

Delete (St, Pos,Num)

Là thủ tục xoá đi Num ký tự từ vị trí Pos trong xâu St.

Ví dụ với St:='Tin hoc';

Sau khi gọi Delete(St, 2, 3);

St sẽ còn lại: Thoc.

Là thủ tục xen xâu ký tự Obj vào xâu St tại vị trí Pos.

Ví dụ với St = 'Tin hoc'; Obj = ' 23';

Sau khi gọi Insert(obj, St, 6); St sẽ thành ' Tin h23oc'.  Str (Value, St)

Là thủ tục biến đổi giá trị bằng số nguyên hoặc thực Value thành một dãy ký tự

biểu diễn số đó. Cách biểu diễn của St sẽ đ ược qui định do qui cách của Value. Ví dụ: i là một số nguyên bằng 52 với qui cách viết là 5 ký tự.

Str (i:5, St) sẽ cho ra St = ' 52'; ( *5 ký tự *)

giả sử X là số thực và bằng 123.5678901. Ta muốn biểu diễn X d ưới dạng 10 ký

tự với 5 số thập phân.

Str(X :10:5, St) sẽ cho kết quả St = ' 123.56789';

Val(St, Value, Code )

Là thủ tục biến đổi xâu ký tự St (biểu diễn một số nguyên hoặc thực) thành một

số nguyên hoặc thực chứa trong value. Code là số nguyên để phát hiện lỗi: nếu

phép biến đổi mà đúng thì Code có giá trị 0, nếu sai do St không biểu diễn đúng

số nguyên hoặc số thực, Code sẽ nhận giá trị bằng vị trí của ký tự sai trong xâu

chữ St.

Ví dụ X là biến thực, St = '123.56', Z là biến nguyên.

Val (St, X, Z) cho ta X = 123.56 và Z = 0

thí dụ i là biến nguyên, St = '123', Z là biến nguyên.

Val (St, i, Z ) cho ta i = 123 và Z =0;

nếu St = ' 123X' tức là St không biểu diễn đúng số nguyên do có chữ X thì Val

(St, i, Z ) cho ta i không xác đ ịnh và Z=4; Ví dụ: Var St : String [4]; K,I : Integer; Begin Repeat

Write('Vào xâu ký tự số nguyên St =');

Readln (St); (*Vào xâu ký tự số nguyênV *)

Val (St, I, K); (*Chuyển St thành số nguyên IC *) If K <> 0 Then writeln (# 7, 'Lỗi!' ); (adsbygoogle = window.adsbygoogle || []).push({});

Until z = 0; End;

 Copy (St, Pos, n)

Hàm Copy sẽ nhận n ký tự trong St từ vị trí Pos.

Ví dụ:

St :='123456789 '; St1 là một xâu ký tự khác.

St1: = Copy (St, 3, 2); sẽ cho St1 = '34';

Là hàm ghép nối tất cả các xâu ký tự St1, St2, ..., StN thành một xâu ký tự theo

thứ tự đã viết. Tất nhiên nếu tổng số chiều dài của các xâu ký tự lớn h ơn 255 thì máy sẽ báo lỗi. chúng ta cũng có thể d ùng phép + để ghép nối xâu ký tự.

Pos(Obj, Target)

Là hàm cho ta vị trí đầu tiên của xâu Obj gặp trong xâu Target.

Nếu không tìm thấy,Pos có giá trị bằng 0.

Ví dụ: Nếu St = '123454545' và Obj ='45' thì Pos(obj,St) cho giá trị bằng 4

Một phần của tài liệu Giáo trình lập trình cấu trúc pascal (Trang 60 - 63)