Click vào bất cứ nơi The correct answer is:You did not answer this question completely You did not answer this question completely Bạn phải trả lời câu hỏi trước khi tiếp tục Bạn phải tr
Trang 1SỞ GIÁO DỤC & ĐÀO TẠO TỈNH LẠNG SƠN
Cuộc thi thiết kế hồ sơ bài giảng điện tử E-Learning
Bài giảng
Tiết 1 - Bài 12
Trường THPT chuyên Chu Văn An
Tháng 3/2012 chương trình Tin hoc 11
thaopt143@gmail.com
Trang 2Bài toán đặt vấn đề:
H n
a N
A H
P
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
Nếu ý tưởng giải quyết bài toán?
Có thể sử dụng kiểu mảng 1 chiều
mà mỗi phần tử là một kí tự
Sử dụng 2 biến i, j để đếm số lượng kí
tự trong mảng A và B Ban đầu i, j
bằng 0 Mỗi lần nhập vào một kí tự của
A và B thì tăng i, j lên 1 So sánh i, j để
đưa ra kết quả.
Nhập vào từ bàn phím họ tên của 2 người, in ra màn hình họ tên dài hơn, nếu bằng nhau thì in ra họ tên nhập sau
Trang 3Chương trình
Trang 5X©u lµ d·y c¸c kÝ tù trong bé m· ASCII.
Ví dụ: cho xâu A = ‘TIN HOC’
Trong đó:
Tham chiếu tới kí tự thứ i của xâu A ta viết: A[i].
Ví dụ: A[5] = ‘H’
Tên xâu: A ;
Mỗi kí tự là một phần tử của xâu;
Độ dài xâu : Số lượng kí tự trong xâu: 7
Các phần tử trong xâu được đánh thứ tự từ 1
Trang 61 Khái niệm
Nội dung
X©u lµ d·y c¸c kÝ tù trong bé m· ASCII.
Một xâu có thể không có kí tự nào không?
Chú ý:
Xâu rỗng: là xâu có độ dài bằng 0, kí hiệu: ‘’
Dấu cách là một kí tự
Xâu gồm 1 kí tự dấu cách có phải
là xâu rỗng?
Có thể coi xâu là mảng 1 chiều được không?
Xâu là mảng 1 chiều mà mỗi phần tử là một kí tự
Các thao tác xử lý trên mảng 1 chiều đều có
Trang 72 Khai báo
Nội dung
Var <danh sách biến> : String [<độ dài lớn nhất>];
Trong đó: Độ dài lớn nhất của xâu không quá 255
Cách 1: Khai báo độ dài lớn nhất của xâu
Ví dụ:
Var <danh sách biến> : String ;
Khi đó: Độ dài lớn nhất của xâu là 255
Cách 2 : Bỏ qua khai báo độ dài lớn nhất của xâu
Trang 8Muốn biến X có thể nhận giá trị là xâu 'Chu Van An' thì
khai báo nào sau đây không thỏa mãn?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
Trang 93 Các thao tác xử lý xâu
So sánh xâu Một số hàm chuẩn Một số thủ tục chuẩn
Ghép xâu
3.2 3.3 3.4 3.5
Trang 103.1 Nhập/xuất
Nội dung
Readln (<tên biến xâu>) ;
Ví dụ: Nhập vào từ bàn phím 2 biến xâu a, b:
a) Nhập:
Write(‘nhap xau a: ’); Readln(a);
Write(‘nhap xau b: ’); Readln(b);
Việc xuất dữ liệu kiểu xâu giống như các kiểu dữ
Trang 113.2 Ghép xâu
Nội dung
Phép ghép xâu, kí hiệu là dấu cộng (+), dùng để ghép nhiều
xâu thành một theo thứ tự từ trái sang phải
Trang 121 Xâu A bằng xâu B nếu chúng
giống nhau hoàn toàn ‘Tin hoc’
2 Nếu xâu A và xâu B có độ dài
khác nhau và A là đoạn đầu của B thì A < B
3 Xâu A > xâu B nếu kí tự đầu
tiên khác nhau giữa chúng
kể từ trái sang trong A có
mã ASCII lớn hơn
‘Ti n hoc’ > ‘Ti e ng Anh’
Trang 153.3 So sánh xâu
Nội dung
1 Mã ASCII của các kí tự tuân theo thứ tự từ điển
2 Mã ASCII của kí tự in thường luôn lớn hơn mã ASCII in
hoa và lớn hơn kí tự in hoa tương ứng 32 đơn vị
Trang 173.4 Một số hàm chuẩn
Nội dung
Trả về kí tự in hoa tương ứng với ch
Ví dụ:cho xâu S = ‘Tin hoc’
Trang 183.4 Một số hàm chuẩn
Nội dung
Trả về vị trí xuất hiện đầu tiên của xâu S1 trong xâu S2
Ví dụ:cho xâu S1 = ‘an’ và S2 = ‘chu van an’ Pos(S1,S2) = ?
Trang 193.4 Một số hàm chuẩn
Nội dung
Trả về xâu con của xâu St, lấy từ vị trí vt, n kí tự liên tiếp
Ví dụ: cho xâu S = ‘chu van an’ thì copy(s,5,3)= ?
Trang 203.5 Một số thủ tục chuẩn
Nội dung
Xóa trong xâu St, từ vị trí vt, n kí tự liên tiếp
Ví dụ: cho biết giá trị của S sau khi thực hiện đoạn lệnh:
S: = ‘chu van an’; delete(S,5,3);
Trang 213.5 Một số thủ tục chuẩn
Nội dung
Chèn xâu S1 vào xâu S2 từ vị trí vt
Ví dụ: cho biết giá trị của S2 sau khi thực hiện đoạn lệnh:
S1:=‘hoc’; S2: = ‘tin 11’; Insert(S1,S2,5);
Trang 23Câu 1: Khai báo nào đúng cú pháp?
Đúng! Click vào bất cứ
nơi nào để tiếp tục
Đúng! Click vào bất cứ
nơi nào để tiếp tục Sai! Click vào bất cứ Sai! Click vào bất cứ nơi nào để tiếp tụcnơi nào để tiếp tục
You answered this
correctly!
You answered this
correctly!
Your answer:
The correct answer is:
You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
Hãy thử lại!
A) Var hoten : string;
B) Var dia chi : string[100];
C) Var ten = string[30];
D) Var ho = string(30);
Trang 24Câu 2: Xâu là dãy các kí tự trong bảng mã nào?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) TCVN3 B) ASCII C) Unicode D) VNI
Trang 25Câu 3: Cho xâu a = 'Tin Hoc', kí tự a[3] có giá trị là:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 'n' B) ' ' C) 'H' D) Tin'
Trang 26Câu 4: Cho S1 = ‘Toi hoc Pascal’
và S2 = ‘Toi dang hoc Pascal’
Khẳng định nào sau đây đúng?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) s1 > s2 B) s1 < s2 C) Length(s1) = Length (s2) D) Length(s1) > Length (s2)
Trang 27Câu 5: Pos('u','Truong Chu Van An') = ?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 2 B) 3 C) 4 D) 16
Trang 28Câu 6: Cho xâu A = ‘abc’ và xâu B = ‘ABC’ Khi đó A+B cho kết quả nào?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) ‘aAbBcC’
B) ‘abcABC’
C) ‘AaBbCc’
D) ‘ABCcbc’
Trang 29Câu 7: Cho biết giá trị của xâu S sau khi thực hiện đoạn lệnh: S := ‘123456789’; delete(s,3,4);
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) S = ‘1256789’
B) S = ‘12789’
C) S = ‘123789’
D) S = ‘’
Trang 30Câu 8: Cho xâu S bất kì, để xóa kí tự cuối cùng của
xâu S ta dùng lệnh nào
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) Delete(X,1,1);
B) Delete(X,1,length(x));
C) Delete(X,length(x),1);
D) Delete(X,length(x),5);
Trang 31Câu 9: Cho s = ‘500 ki tu’ Hàm Length(s) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 500 B) 9 C) '5' D) '500'
Trang 32Câu 10: Cho xâu S1 = ‘010’ và xâu S2 = ‘1001010’ Hàm pos(s1,s2) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 3 B) 4 C) 2 D) 8
Trang 33Câu 11: Cho xâu S = ‘123456789’ Hàm Copy(s,2,3) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) '234' B) 234 C) '345' D) 345
Trang 34Câu 12: Cho S='Tin Hoc‘ Hàm upcasse(S[1]) cho kết quả là:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 'T'
B) 'n'
C) 't'
D) 'N'
Trang 355 Kiểm tra đánh giá
Trang 36Câu 1: Trong các khai báo sau, khai báo nào đúng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) Var a : string[1 100];
B) Var a : string(100);
C) Var a: string[10];
D) Var a : string[4.5];
Trang 37Câu 2: Cho khai báo: Var a: string; Khi đó a có thể nhận độ dài tối đa là:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 128
B) 255
C) 256
D) 0
Trang 38Câu 3: Cho xâu a = 'Viet Nam‘ Kí tự
a[4] có giá trị là:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 't'
B) ' '
C) 'e'
D) 'Viet'
Trang 39Câu 4: Cho xâu S1 = ‘con cho’ và xâu S2 = ‘con meo’ Khẳng định nào sau đây đúng?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) s1 > s2
B) s1 < s2
C) Length(s1) < Length (s2)
D) Length(s1) > Length (s2)
Trang 40Câu 5: Pos('o','con ong') = ?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 2
B) 3
C) 4
D) 5
Trang 41Câu 6: Cho xâu A = ‘123’ và xâu B = ‘654’ Khi đó A+B cho kết quả nào?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) '65432'
B) ‘777’
C) ‘123654’
D) ‘123456’
Trang 42Câu 7: Cho biết giá trị của xâu S sau khi thực hiện đoạn lệnh: S := ‘987654321’; delete(s,4,2);
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) S = ‘9874321’
B) S = ‘1356789’
C) S = ‘9754321’
D) S = ‘’
Trang 43Câu 8: Cho xâu S = ‘10 so’ Hàm Length(s) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 10
B) 5
C) '10'
D) '5'
Trang 44Câu 9: Cho xâu S1 = ‘aba’ và xâu S2 =
‘abbabaaaba’ Hàm pos(s1,s2) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 3
B) 4
C) 2
D) 8
Trang 45Câu 10: Cho xâu S = ‘123456789’ Hàm Copy(s,3,2) cho giá trị bằng:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 34
B) '34'
C) 234
D) '234'
Trang 46Câu 11: Cho xâu S='Tin Hoc‘ Hàm upcasse(S[3]) cho kết quả là:
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) 'T'
B) 't'
C) 'N'
D) 'n'
Trang 47Câu 12: Cho xâu S bất kì, để xóa 3 kí tự đầu tiên của xâu S ta dùng lệnh nào?
Đúng! Click vào bất cứ nơi
nào để tiếp tục
Đúng! Click vào bất cứ nơi
nào để tiếp tục Sai! Click vào bất cứ nơi nào để tiếp tục
Sai! Click vào bất cứ nơi
The correct answer is:You did not answer this question completely
You did not answer this question completely
Bạn phải trả lời câu hỏi trước khi tiếp tục
Bạn phải trả lời câu hỏi trước khi tiếp tục GửiGửi HủyHủy
A) Delete(X,1,3);
B) Delete(X,3,1);
C) Delete(X,length(x),1);
D) Delete(X,length(x),3);