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 (361.84 KB, 20 trang )
<span class='text_page_counter'>(1)</span>Kiểm tra bài cũ. • Câu 1: Viết khai báo trực tiếp biến mảng 2 chiều. • Câu 2: Cho mảng số nguyên C, gồm 8 dòng và 9 cột. Viết khai báo cho biến mảng 2 chiều C.. Lop10.com.
<span class='text_page_counter'>(2)</span> Ví dụ 1:. 3Dữ liệu2 các phần 7. tử trong vd 1 là dữ liệu dạng gì?. 9. 6. I. 8. 4. Dữ liệu của các phần tử trong vd1 là dữ liệu dạng kiểu số. Ví dụ 2:. T. 5. N. H. Các phần tử trong vd2 có phải là dữ liệu không? Lop10.com. O. C.
<span class='text_page_counter'>(3)</span> Bài 12: KiỂU XÂU Lop10.com.
<span class='text_page_counter'>(4)</span> 1. Khái niệm Xâu là dãy các kí tự trong bộ mã ASCII. • Xâu được tạo thành bởi các kí tự, trong đó có thể có kí tự trống (dấu cách). • Mỗi kí tự được gọi là 1 phần tử của xâu. • Số lượng kí tự trong một xâu được gọi là độ dài của xâu. • Xâu có độ dài bằng 0 gọi là xâu rỗng. Lop10.com.
<span class='text_page_counter'>(5)</span> • Trong chương trình khi viết 1 xâu kí tự ta phải viết xâu kí tự đó giữa 2 dấu nháy đơn. Ví dụ: 'Tin hoc' • Khi nhập từ bàn phím 1 xâu, ta gõ các kí tự thuộc xâu đó (rồi nhấn phím Enter). Lop10.com.
<span class='text_page_counter'>(6)</span> Ví dụ A 1. 2. 3. 4. 5. 6. Tên xâu: A Độ dài của xâu: 7. T. H. Tham chiếu đến phần tử của xâu. I. N. H. O. C. Tên biến xâu [chỉ số] Ví dụ: A[5]: = ‘H’. Tham chiếu tới phần tử thứ i của xâu ta viết A[i]. Lop10.com. 7.
<span class='text_page_counter'>(7)</span> Xâu 1 kí tự Xâu có rỗng được trốngnhư được viết thếviết nào? nhưĐộ thếdài nào? baoĐộ dài bao nhiêu? nhiêu?. T I N. H O C. Xâu chỉ gồm 1 kí tự trống viết là: ‘ ’ Có độ dài là 1. Để viết xâu rỗng ta viết 2 dâu nháy đơn liền nhau ‘’. Có độ dài là 0. Lop10.com.
<span class='text_page_counter'>(8)</span> 2. Khai báo var <tên biến>: string [độ dài lớn nhất của xâu] ; Ví dụ: var Hoten: string [26] ; Trong khai báo xâu có thể bỏ qua phần khai báo [độ độ dài lớn nhất của xâu]. Khi đó nó nhận giá trị ngầm định là 255; Ví dụ: var Chugiai: string; Lop10.com.
<span class='text_page_counter'>(9)</span> Nhập 1 xâu từ bàn phím. Readln(biến xâu);. Viết 1 xâu ra màn hình. Writeln(biến xâu);. Vd: Readln(st);. Vd: Writeln(st);. Ngoài ra ta có thể sử dụng lệnh gán để nhập giá trị cho biến xâu. Tên_biến_xâu:=‘hằng_xâu’; S := ‘Ha noi’ Lop10.com.
<span class='text_page_counter'>(10)</span> 3. Các thao tác xử lý xâu • 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 1. S = S1 + S2 + … + Sn 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ụ: ‘Ha’ + ‘ Noi’ + ‘ - ’ + ‘Viet Nam’ Xâu kết quả: ‘Ha Noi - Viet Nam’ Lop10.com.
<span class='text_page_counter'>(11)</span> Ví dụ: Ghép các xâu sau 'Ca' + 'Mau' =. ' CaMau'. 'Tran Van' + 'Thoi' =. Lop10.com. 'Tran VanThoi'.
<span class='text_page_counter'>(12)</span> b. Các phép so sánh • Các phép so sánh : =, <>, <, >, ≤, ≥ trên xâu được thực hiện theo thứ tự trong bảng mã ASCII. • So sánh 2 xâu theo quy tắc sau: * Xâu. A = B, nếu chúng giống hệt nhau ‘tin hoc’ = ‘tin hoc’ * Xâu. A <> xâu B. ‘tin hoc ’ <> ‘tin hoc’ Lop10.com.
<span class='text_page_counter'>(13)</span> * Xâu A > B nếu: + Xâu B là đoạn đầu của xâu A B:=‘may tinh’ < A:=‘may tinh moi’ + Kí tự đầu tiên khác nhau kể từ trái sang A:=‘Ha Noi’ > B:=‘Ha Nam’ trong xâu A có mã ASCII lớn hơn xâu B Xâu có độ dài lớn hơn có thể là xâu nhỏ hơn.. ‘Anh’ Lop10.com. <. ‘Ba’.
<span class='text_page_counter'>(14)</span> Ví dụ: So sánh các xâu sau 1. 'AB' <. 'ABC'. 2.'AC'. 'ABC'. >. 3. 'AB' <. 'AC'. 4. 'ABB' <. 'ABC'. Lop10.com.
<span class='text_page_counter'>(15)</span> Ví dụ: A1:=‘nguyen van a’. A2:= ‘Nguyen Van A’. B1:=‘May Vi Tinh’. B2 :=‘May Tinh’. C1:=‘Day tot - Hoc’. C2:=‘Day tot - Hoc tot’. Lop10.com.
<span class='text_page_counter'>(16)</span> c. Các thủ tục và hàm chuẩn xử lý xâu THỦ TỤC. Ý NGHĨA. VÍ DỤ. S:=‘Song Hong’. Xóa n kí tự của Delete(S, 1, 5) Delete (S, vt, n) biến xâu S bắt đầu ‘Hong’ từ vị trí vt. Delete(S, 6, 4) ‘Song ’ S1:=‘Tin ’, S2:=‘Hoc’ Chèn xâu S1 vào Insert(S1, S2 ,1) Insert (S1, S2, vt) xâu S2 bắt đầu ở ‘Tin Hoc’ Insert(S2, S1 ,1) vị trí vt. ‘HocTin ’ Lop10.com.
<span class='text_page_counter'>(17)</span> HÀM Copy (S, vt, n). Length (S). Pos (S1, S2). Upcase (ch). Ý 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 xâu S. VÍ DỤ S:= ‘Tin Hoc’ Copy(S, 5, 3) ‘Học’ S:=‘Tin Hoc ’ Length(S) -> 8. Cho vị trí xuất hiện đầu tiên của xâu S1 trong xâu S2.. S1:=‘cd’ S2:=‘abcdef’ Pos(S1, S2) ->3. Cho chữ cái in hoa ứng với chữ cái trong ch.. Ch:=‘d’ Upcase(ch) ‘D’. Lop10.com.
<span class='text_page_counter'>(18)</span> Ví dụ: 1. Cho S = ‘Mon tin hoc’ X =‘Mon ? hoc’ Delete(S,4, 4); 2. Cho S = ‘Em yeu truong em’. Hãy viết thao tác để thêm tên trường em đang học vào sau chữ truong trong xâu S? Insert(‘Tran Van Thoi ’, X, 15); 3. Cho S = ‘cai xac xinh xinh’. Cho biết giá trị của thao tác pos(‘xinh’, S)? Pos(‘xinh’,S) = 9 Lop10.com.
<span class='text_page_counter'>(19)</span> Hết. Lop10.com.
<span class='text_page_counter'>(20)</span> Bài 12: kiểu xâu(tiếp theo). Lop10.com.
<span class='text_page_counter'>(21)</span>