Bài 24. Xâu kí tự trang 50, 51 SBT Tin học 10 Kết nối tri thức với cuộc sống

Cho trước xâu kí tự S, có cách nào để nhận được xâu bao gồm các kí tự lấy từ S nhưng với thứ tự ngược lại hay không? Ví dụ nếu S = "01ab" thì xâu nhận được phải là "ba10".


24.1

Giả sử s = "Thời khóa biểu" thì len(s) bằng bao nhiêu?

A. 3.                                        B. 5.

C. 14.                                      D. 17.

Phương pháp giải:

Sử dụng lệnh len() để kiểm tra độ dài của xâu s = "Thời khóa biểu"

Lời giải chi tiết:

Giả sử s = "Thời khóa biểu" thì len(s) bằng:

C. 14.


24.2

Các biểu thức logic sau trả về giá trị gì?

a) "01" in "10101"                                             b) "10110" in "111000101"

c) "abcab"in"bcabcabcabcb"

Phương pháp giải:

Phép toán logic cho kết quả là True hoặc False

Lời giải chi tiết:

a) True;                        b) False;                                   c) True.


24.3

Hai biểu thức sau có tương đương không?

a) ch in "0123456789"                                       b) "0" <= ch <= "9"

Phương pháp giải:

Quan sát hai biểu thức và vận dụng kiến thức đã học

Lời giải chi tiết:

Hai biểu thức có tương đương


24.4

Hai biểu thức sau có tương đương không?

a) "0" <= ch <= "9"                                            b) ord("0") <= ord(ch) <= ord("9")

Phương pháp giải:

Quan sát hai biểu thức và vận dụng kiến thức đã học

Lời giải chi tiết:

Hai biểu thức có tương đương


24.5

Cho trước xâu kí tự S, có cách nào để nhận được xâu bao gồm các kí tự lấy từ S nhưng với thứ tự ngược lại hay không? Ví dụ nếu S = "01ab" thì xâu nhận được phải là "ba10".

Phương pháp giải:

Vận dụng kiến thức và sự hiểu biết bản thân

Lời giải chi tiết:

Có nhiều cách. Ví dụ.

S1 = " "

for ch in S:

S1 = ch + S1

hoặc có thể chỉ bằng một lệnh:

S1 = S[: : -1]


24.6

Nếu S = "1234567890" thì S[0:4] là gì?

A. "123"                                   B. "0123"

C. "01234"                                D. "1234"

Phương pháp giải:

S[0:4] là lệnh bắt đầu từ vị trí 0 đến vị trí stop -1 

Lời giải chi tiết:

Nếu S = "1234567890" thì S[0:4] là:

D. "1234"


24.7

Kết quả đoạn chương trình sau là gì?

s = "0123456789"

T = ""

for i in range(0, len(S),2):

T = T + S[i]

print(T)

A. ""                                         B. "02468"

C. "13579"                                D."0123456789"

Phương pháp giải:

Đoạn lệnh có nghĩa là in các phần tử trong dãy S bắt đầu từ phần tử 0 mỗi phần tử cách nhau 2 bước nhảy

Lời giải chi tiết:

Kết quả đoạn chương trình sau là: B. "02468"


24.8

Cho trước xâu kí tự S bất kì. Viết đoạn chương trình có chức năng sau:

a) Đếm số các kí tự là chữ số trong S

b) Đếm số các kí tự là chữ cái tiếng Anh trong S.

Phương pháp giải:

Dựa vào kiến thức đã học để viết đoạn chương trình

Lời giải chi tiết:

a) Đoạn chương trình có thể viết như sau:

count = 0

for ch in S:

if "0" <= ch <= "9":

count = count + 1

print(count)

b) Đoạn chương trình có thể viết như sau:

count = 0

for ch in S:

if "a" <= ch <= "z" or "A" <= ch <="Z":

count = count + 1

print(count)


24.9

Mệnh đề nào dưới đây đúng?

A. Xâu kí tự trong Python là xâu chỉ gồm các kí tự nằm trong bảng mã ASCII.

B. Xâu kí tự trong Python là xâu bao gồm các kí tự nằm trong bảng mã ASCII và một số kí tự tiếng Việt trong bảng mã Unicode.

C. Xâu kí tự trong Python là xâu bao gồm các kí tự nằm trong bảng mã Unicode.

D. Xâu kí tự trong Python là xâu bao gồm các kí tự số và chữ trong bảng mã Unicode.

Phương pháp giải:

Dựa vào kiến thức đã học về định nghĩa xâu kí tự

Lời giải chi tiết:

Mệnh đề đúng:

C. Xâu kí tự trong Python là xâu bao gồm các kí tự nằm trong bảng mã Unicode.


24.10

Muốn biết biến s thuộc kiểu xâu kí tự hay không thì cần kiểm tra bằng lệnh gì?

Phương pháp giải:

Dựa vào sự hiểu biết của bản thân và dựa vào kiến thức đã học

Lời giải chi tiết:

Có thể kiểm tra bằng biểu thức lôgic sau: type(s) == type("").


24.11

Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình in ra xâu kí tự bao gồm lần lượt các kí tự được lấy ra từ s1, s2. Nếu một trong hai xâu s1, s2 hết trước thì lấy tiếp từ xâu còn lại. Ví dụ nếu s1 = "012", s2 = "abcde" thì xâu kết quả sẽ là "0a1b2cde".

Phương pháp giải:

Dựa vào kiến thức đã học

Lời giải chi tiết:

Giả sử m1 = len(s1), m2 = len(2), m = min(m1,m2). Chương trình sẽ bao gồm: hai phần.

- Phần 1: duyệt lần lượt m lần, mỗi lần lấy một kí tự của s1, sau đó lấy 1 kí tự của s2, đưa vào xâu kết quả s.

– Phần 2: duyệt trên xâu còn lại (là xâu có độ dài > m) và đưa kết quả vào xâu s.


24.12

Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình tính in ra xâu kí tự là phần chung đầu tiên cực đại của hai xâu s1, s2. Ví dụ nếu s1 = "abcdeghik", s2 = "abcmnopq" thì xâu cần tính là "abc".

Phương pháp giải:

Dựa vào kiến thức đã học để viết đoạn chương trình

Lời giải chi tiết:

Đoạn chương trình có thể viết như sau:

m = min(len(s1),len(s2))

i = 0

s = ""

while i < m and s1[i] == s2[i]:

    s = s + s1[i]

    i = i + 1

print(s)



Bài giải liên quan

Từ khóa phổ biến