Bài giảng Tin học Lớp 11 - Bài 15: Kiểu dữ liệu xâu - Trường THPT Quang Trung
Bạn đang xem tài liệu "Bài giảng Tin học Lớp 11 - Bài 15: Kiểu dữ liệu xâu - Trường THPT Quang Trung", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
Tóm tắt nội dung tài liệu: Bài giảng Tin học Lớp 11 - Bài 15: Kiểu dữ liệu xâu - Trường THPT Quang Trung
Bài 15 kiểu dữ liệu xâu Giáo án đ iện tử tin học lớp 11 GV Dinh Nguyen Thanh Tu suu tam va gioi thieu voi CENTEA Data TR ƯỜNG THPT QUANG TRUNG Nhập vào họ tên của hai học sinh , in ra màn hình họ tên dài hơn ? H n a N A H P m y N e y u G N A B Hãy xác đ ịnh kiểu dữ liệu của hai biến A,B? Bài toán đ ặt vấn đề: Xâu là dãy các kí tự trong bộ mã ASCII. T I n H o c A 1 2 3 4 5 6 7 Trong đ ó : Khi tham chiếu đ ến kí tự thứ i của xâu ta viết A[i ] . Ví dụ : A[5]=‘H’. Tên xâu : A ; Mỗi kí tự gọi là một phần tử của xâu ; Ví dụ : Độ dài của xâu ( số kí tự trong xâu ): 7 ; H 1. Khái niệm 2. Khai báo kiểu dữ liệu xâu ( trong Pascal) Var : String [độ dài lớn nhất ] ; Ví dụ : Var hoten : String [26] ; Khi khai báo xâu có thể bỏ qua phần khai báo [độ dài lớn nhất ] , khi đ ó độ dài lớn nhất của xâu sẽ nhận gi á trị ngầm đ ịnh là 255. Ví dụ : Var chuthich :String; 3. Các thao tác xử lí xâu a. Biểu thức xâu : Là biểu thức trong đ ó các toán hạng là các biến xâu , biến kí tự . Ví dụ : ‘ Ha’ + ‘ Noi ’ ‘Ha Noi ’ * Phép ghép xâu : kí hiệu “+” dùng để ghép nhiều xâu thành một xâu * Phép so sánh : =, , ,>= ‘Ha N o i ’ > ‘Ha N a m’ ‘ Xau ’ < ‘ Xau ki tu ’ * Quy ư ớc : - Xâu A = B nếu chúng giống hệt nhau . - Xâu A > B nếu : + Kí tự đ ầu tiên khác nhau giữa chúng ở xâu A có mã ASCII lớn hơn ở xâu B. + Xâu B là đoạn đ ầu của xâu A. - Xâu rỗng là xâu ‘’ ‘Tin hoc’ = ‘Tin hoc’ Ví dụ b. Các thủ tục và hàm chuẩn xử lí xâu S1=‘1’ S2=‘ Hinh .2’ Insert(s1,s2,6) ’ Hinh 1.2’ Chèn xâu S1 vào xâu S2 bắt đ ầu từ vị trí vt . 2. Insert (S1,S2,vt) S = ‘Song Hong’ Delete(S,1,5) ‘Hong’ Xoá n kí tự của xâu S bắt đ ầu từ vị trí vt . 1. Delete (S,vt,n ) Ví dụ ý nghĩa Thủ tục Ch=‘a’ UPCase(ch ) = ‘A’ Chuyển kí tự ch thành ch ữ hoa 4. UPCase (ch ) S1=‘1’ S2=‘ Hinh 1.2’ Pos(S1,S2) = 6 Cho vị trí xuất hiện đ ầu tiên của xâu S1 trong xâu S2 3. Pos (S1,S2) S = ‘ Xin chao ’ Length(S ) = 8 Cho gi á trị là độ dài của xâu S 2. Length (S ) Ví dụ ý nghĩa Hàm S = ‘Tin hoc’ Copy(S,5,3)= ‘hoc’ 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 1. Copy (S,vt,n ) 4. Một số ví dụ Nhập vào họ tên của hai học sinh , in ra màn hình họ tên dài hơn ? 1 Các bước : Thể hiện bằng pascal 1. Khai báo xâu Var a,b : string; 2. Nhập xâu BEGIN Write(‘ Nhap xau ho ten thu nhat :’); Readln(a ); Write(‘Nhap xau ho ten thu hai :’); Readln(b ); 3. Xử lí xâu IF Length(a )> Length(b ) Then write(a ) else write(b ); Readln ; END. Nhập vào hai xâu từ bàn phím , kiểm tra xem 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 ? 2 Các bước : 1. Khai báo xâu : A,B 2. Nhập xâu 3. Xử lí xâu , trong đ ó : Kí tự đ ầu tiên của xâu A: A[1] Kí tự cuối cùng của xâu B: B[x ] trong đ ó X là độ dài của xâu B Dựa vào các bước bên , hãy hoàn thiện chương trình ? Nhập vào một xâu từ bàn phím , đưa ra màn hình xâu thu đư ợc bằng cách loại bỏ các dấu cách từ xâu đã cho ? 3 Hãy nêu thuật toán để giải bài toán trên ? Ví dụ : - Xâu ban đ ầu : ‘ Mon Tin hoc ’ - Kết qu ả ra màn hình : ‘ MonTinho c ’ Thuật toán B1. Khởi tạo xâu rỗng ; B2. Lần lượt duyệt qua tất cả các phần tử của xâu vừa nhập , nếu phần tử đư ợc duyệt khác dấu cách th ì bổ sung vào xâu rỗng . Hãy viết chương trình dựa theo thuật toán bên . Hãy nhớ ! Xâu là dãy các kí tự trong bộ mã ASCII. Khai báo : tên xâu , độ dài lớn nhất của xâu . Tham chiếu phần tử của xâu : Tên xâu[chỉ số ] Các thao tác xử lí thường dùng : + Phép ghép xâu , so sánh xâu ; + Các thủ tục và hàm chuẩn . ‘ Xin chao cac ban!’ Var S : string[30] S[1] = ‘ X ’
File đính kèm:
bai_giang_tin_hoc_lop_11_bai_15_kieu_du_lieu_xau_truong_thpt.ppt

