Tìm kiếm theo tiêu đề

Tin tức cộng đồng

[MỜI HỢP TÁC] Các kỳ thi Olympic Quốc tế 2026 (IMO - IEO - ISO)

Kính gửi Quý Lãnh đạo, Ban Giám hiệu và Quý Thầy/Cô, FermatTech (Đối tác Google tại VN) phối hợp cùng SCO Ấn Độ trân trọng kính mời tham gia 3 kỳ thi uy tín dành cho HS từ lớp 1 - 12: - IMO: Olympic Toán Quốc tế. - IEO: Olympic Tiếng Anh Quốc tế. - ISO: Olympic Khoa học...
Xem tiếp

Tin tức thư viện

Chức năng Dừng xem quảng cáo trên violet.vn

12087057 Kính chào các thầy, cô! Hiện tại, kinh phí duy trì hệ thống dựa chủ yếu vào việc đặt quảng cáo trên hệ thống. Tuy nhiên, đôi khi có gây một số trở ngại đối với thầy, cô khi truy cập. Vì vậy, để thuận tiện trong việc sử dụng thư viện hệ thống đã cung cấp chức năng...
Xem tiếp

Hỗ trợ kĩ thuật

  • (024) 62 930 536
  • 0919 124 899
  • hotro@violet.vn

Liên hệ quảng cáo

  • (024) 66 745 632
  • 096 181 2005
  • contact@bachkim.vn

Bài 12. Kiểu xâu

Wait
  • Begin_button
  • Prev_button
  • Play_button
  • Stop_button
  • Next_button
  • End_button
  • 0 / 0
  • Loading_status
Tham khảo cùng nội dung: Bài giảng, Giáo án, E-learning, Bài mẫu, Sách giáo khoa, ...
Nhấn vào đây để tải về
Báo tài liệu có sai sót
Nhắn tin cho tác giả
(Tài liệu chưa được thẩm định)
Nguồn:
Người gửi: Hoàng Trung Thông
Ngày gửi: 08h:16' 14-03-2008
Dung lượng: 301.0 KB
Số lượt tải: 195
Số lượt thích: 0 người
TRƯỜNG THPT PHƯỚC BÌNH
GV:HOÀNG TRUNG THÔNG
BÀI 12. KIỂU XÂU
Dữ liệu trong các bài toán không chỉ phụ thuộc kiểu số mà cả kiểu phi số - dạng kí tự. Dữ liệu kiểu xâu là dãy các kí tự.
Ví dụ: các xâu đơn giản:
`phuoc binh`
`2008 la nam Mau Ty`
Biến kiểu xâu có thể khai báo:
var := string[độ dài lớn nhất của xâu];
Ví dụ: var diachi: string[50];
Trong mô tả xâu có thể bỏ qua phần khai báo độ dài, chẳng hạn:
var diachi: string;
Khi đó độ dài của xâu sẽ nhận được giá trị ngầm định là:255.



1.KHAI BÁO

2.CÁC THAO TÁC XỬ LÍ XÂU
a) Phép ghép xâu, kí hiệu là dấu cộng(+), được sử dụng để ghép nhiều xâu thành một. Có thể thực hiện phép ghép xâu đối với các hằng và biến xâu.
Ví dụ: phép ghép xâu:
`Phuoc` + ` Binh`
cho xâu kết quả là `Phuoc Binh`
b) Các Phép so sánh: =,<>,<,>,<=,>= có thứ tự thực hiện ưu tiên thấp hơn phép ghép xâu:
Thực hiện việc so sánh hai xâu theo quy tắc sau:
+ 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ụ:
` aec` < `bc`
+ Xâu A và B là xâu có độ dài khác nhau và A là đoạn đầu của B thì A là nhỏ hơn B.
Ví dụ: `Phuoc binh` < `Phuoc binh que toi`
+ Hai xâu bằng nhau nếu chúng giống nhau hoàn toàn
vd: `phuoc binh` = `phuoc binh`
c. Thủ tục delete(st,vt,n)
Thực hiện việc xoá n kí tự của biến xâu bắt đầu từ vị trí vt.
Ví dụ:
st: `phuoc binh que toi`
? delete(st,7,4)? `phuoc que toi`

d) THỦ TỤC insert(s1,s2,vt)
Thủ tục chèn xâu s1 vào xâu s2, bắt đầu ở vị trí vt.
Ví dụ: s1: `phuoc`
s2: `truongbinh`
Vt: 7
? insert(s1,s2,vt)? `truongphuocbinh`
e)Hàm copy(S,vt,n)
Tạo xâu gồm N kí tự liên tiếp bắt đầu từ vt của xâu S.
Ví dụ: S: `THPT PHUOC BINH`
copy(s,6,5)? `PHUOC`
f.Hàm length(s)
Cho giá trị độ dài xâu s.
Ví dụ:
S: `phuoc binh` ;
length(s)? 10;

g) Hàm pos(s1,s2)
Cho vị trí xuất hiện đầu tiên của xâu s1 trong xâu s2.
Ví dụ: s1: `pho`
s2: `truong pho thong`
pos(s1,s2)? 8

h)Hàm upcase(ch)
Cho chữ cái in hoa ứng với chữ cái trong ch.
Ví dụ:
ch: `a`
upcase(ch)? `A`
3.MỘT SỐ VÍ DỤ
VÍ DỤ 1:
Chương trình dưới đây nhập họ tên của hai người vào hai biến xâu và đưa ra màn hình xâu dài hơn, nếu bằng nhau thì đưa xâu nhập sau.

program sosanh2xau;
uses crt;
var a,b : string;
begin
clrscr;
write(`nhap vao ho ten thu nhat: `); readln(a);
write(`Nhap vao ho ten thu hai: `); readln(b);
if length(a)> length(b) then write(a) else write(b);
readln
end.
Ví dụ 2:
Chương trình dưới đây nhập hai xâu từ bàn phím và kiểm tra 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.
program ktkitudautien;
uses crt;
var x: byte;
a,b: string;
begin
clrscr;
write(`Nhap xau thu nhat: `); readln(a);
write(`Nhap xau thu hai: `); readln(b);
x:=length(b);
{ Xac dinh do dai xau b de biet vi tri cua ki tu cuoi cung }
if a[1]= b[x] then write(` Trung nhau `)
else write(` Khac nhau `);
readln
end.

Ví dụ 3:
Chương trình sau nhập một xâu vào từ bàn phím và đưa ra màn hình xâu đó nhưng được viết theo thứ tự ngược lại.
program xaudaonguoc;
uses crt;
var a:string;
i,k:integer;
begin
clrscr;
write(`Nhap vao mot xau `); readln(a);
write(` XAU DAO NGUOC LA: `);
k:=length(a);
for i:= k downto 1 do write(a[i]);
readln
end.
Ví dụ 4:
Chương trình sau nhập một xâu vào từ bàn phím và đưa ra màn hình xâu thu được từ nó bởi việc loại bỏ các dấu cách nếu có.
program loaibo;
uses crt;
var i,k: byte;
a,b: string;
begin
write(`Nhap xau : `); readln(a);
k:=length(a);
b:=` `;{ khoi tao xau rong }
for i:= 1 to k do
if a[i] <> ` ` then b:=b+a[i];
writeln(`Ket qua : `, b);
readln
end.
Ví dụ 5:
Chương trình sau nhập vào từ bàn phím xâu kí tự s1, tạo xâu s2 gồm tất cả các chữ số có trong s1(giữ nguyên thứ tự xuất hiện của chúng) và đưa ra kết qủa màn hình.
program xulixau;
uses crt;
var s1,s2: string;
i:byte;
begin
clrscr;
write(`Nhap vao xau s1: `); readln(s1);
s2:=` `; { khoi tao xau rong }
for i:=1 to length(s1) do
if ( `0` <= s1[i] ) and (s1[i] <=`9`) then s2 :=s2+s1[i];
writeln(`Ket qua: `, s2);
readln
end.
Ví dụ 5:
Chương trình sau nhập vào từ bàn phím xâu kí tự s1, tạo xâu s2 gồm tất cả các chữ số có trong s1(giữ nguyên thứ tự xuất hiện của chúng) và đưa ra kết quả ra màn hình.
program xulixau;
uses crt;
var s1,s2: string;
i:byte;
begin
clrscr;
write(`Nhap vao xau s1: `); readln(s1);
s2:=` `; { khoi tao xau rong }
for i:=1 to length(s1) do
if ( `0` <= s1[i] ) and (s1[i] <=`9`) then s2 :=s2+s1[i];
writeln(`Ket qua: `, s2);
readln
end.
 
Gửi ý kiến

↓ CHÚ Ý: Bài giảng này được nén lại dưới dạng ZIP và có thể chứa nhiều file. Hệ thống chỉ hiển thị 1 file trong số đó, đề nghị các thầy cô KIỂM TRA KỸ TRƯỚC KHI NHẬN XÉT  ↓