Giải Tin học 10 (Kết nối tri thức) Bài 24: Xâu kí tự

Hoidap.vietjack.com trân trọng giới thiệu: lời giải bài tập Tin học lớp 10 Bài 24: Xâu kí tự sách Kết nối tri thức hay nhất, chi tiết giúp học sinh dễ dàng làm bài tập Tin học 10 Bài 24. Mời các bạn đón xem:

671


Giải Tin học lớp 10 Bài 24: Xâu kí tự

Khởi động

Khởi động trang 119 Tin học 10Em đã biết dữ liệu xâu kí tự (gọi tắt là xâu) từ Bài 16 và chúng ta có thể tạo các biến kiểu xâu kí tự theo nhiều cách như sau:

>>> s = “Thời khoá biểu”

>>> xau = ‘Hoa học trò’

>>> Cau_tho = “““ Mình về mình có nhớ ta

Mười lăm năm ấy thiết tha mặn nồng”””

Liệu có lệnh nào trích ra từng kí tự của một xâu kí tự? Đếm số kí tự của một xâu?

Lời giải:

Tương tự như danh sách, ta có thể truy cập từng kí tự của xâu thông qua chỉ số.

1. Xâu là một dãy các kí tự

Hoạt động

Hoạt động 1 trang 119 Tin học 10: Tìm hiểu cấu trúc của xâu kí tự

Quan sát các ví dụ sau để biết cấu trúc xâu kí tự, so sánh với danh sách để biết sự khác nhau giữa xâu (string) và danh sách (list)

Lời giải:

- Cấu trúc xâu kí tự: xâu kí tự trong Python là dãy các kí tự Unicode.

- So sánh với danh sách:
+ Giống: Xâu có thể coi là một danh sách các kí tự, có thể truy cập từng kí tự xâu qua chỉ số, chỉ số từ 0 đến độ dài len() – 1

+ Khác: Không thể thay đổi từng kí tự của xâu.

Câu hỏi

Câu hỏi 1 trang 120 Tin học 10: Các xâu kí tự sau có hợp lệ không?

a) “123&*( )+-ABC”                       b) “1010110&0101001”

c) “Tây Nguyên”                              d) 11111111 = 256

Lời giải:

Xâu kí tự a, b, c là hợp lệ.

Xâu không hợp lệ là xâu d vì không có dấu nháy ngoài xâu.

Câu hỏi 2 trang 120 Tin học 10: Mỗi xâu hợp lệ ở Câu 1 có độ dài bằng bao nhiêu?

Lời giải:

Độ dài của xâu lần lượt là: 12, 15, 10.

2. Lệnh duyệt kí tự của xâu

Hoạt động

Hoạt động 2 trang 120 Tin học 10: Tìm hiểu lệnh duyệt từng kí tự của xâu

Quan sát các lệnh sau để biết cách duyệt từng kí tự của xâu kí tự bằng lệnh for. Có hai cách duyệt, theo chỉ số và theo phần tử của xâu kí tự.

Giải Tin học 10 Bài 24: Xâu kí tự - Kết nối tri thức (ảnh 1)

Lời giải:

- Cách thứ nhất, biến I lần lượt chạy theo chỉ số của xâu kí tự s, từ 0 đến len(s) -1. Kí tự tại chỉ số i là s[i].

- Cách thứ hai duyệt theo từng kí tự của xâu s. Biến ch sẽ được gán lần lượt các kxi tự của xâu s từ đầu đến cuối.

Câu hỏi

Câu hỏi 1 trang 121 Tin học 10Sau khi thực hiện các lệnh sau, biến skq sẽ có giá trị bao nhiêu?

>>> s = “81723”

>>> skq = “ ”

>>> for ch in s:

if int(ch) % 2 ! = 0:

skq = skq + ch

Lời giải:

skq=”173”

Giải Tin học 10 Bài 24: Xâu kí tự - Kết nối tri thức (ảnh 1)

Câu hỏi 2 trang 121 Tin học 10: Cho s1 = “abc”, s2 = “ababcabca”. Các biểu thức lôgic sau cho kết quả là đúng hay sai?

a) s1 in s2                                        b) s1 + s1 in s2

c) “abcabca” in s2                            d) “abc123” in s2

Lời giải:

a) Đúng vì s1 là xâu con của s

b) s1+s1=”abcabc” là xâu con của s2 => s1+s1 in s2 đúng

c) “abcabca” in s2 => đúng vì abcabca là xâu con của s2

d) Sai. Vì “abc123” là con của s2

Luyện tập

Luyện tập 1 trang 122 Tin học 10: Cho xâu S, viết đoạn lệnh trích ra xâu con của S bao gồm ba kí tự đầu tiên của S.

Lời giải:

S=” “

for i in range(0,3):

s=s+s[i]

print(s)

Luyện tập 2 trang 122 Tin học 10: Viết chương trình kiểm tra xâu S có chứa chữ số không. Thông báo “S có chứa chữ số” hoặc “S không chứa chữ số nào”.

Lời giải:

S=input(“nhập xâu kí tự:”)

for ch in S:

if ch>=0  and  ch<10

         print (“S có chứa chữ số”)

else:

print (“S không có chứa chữ số”)      

Vận dụng

Vận dụng 1 trang 122 Tin học 10: Cho hai xâu S1, S2. Viết đoạn chương trình chèn xâu S1 vào giữa S2, tại vị trí len(S2)//2. In kết quả ra màn hình.

Lời giải:

S1=input(“nhập xâu kí tự:”)

S2=input(“nhập xâu kí tự:”)

S2.insert((len(S2)//2),S1)

print(S2)

Vận dụng 2 trang 122 Tin học 10: Viết chương trình nhập số học sinh và họ tên học sinh. Sau đó đếm xem trong danh sách có bao nhiêu bạn tên là “Hương”.

Gợi ý: Sử dụng toán tử in để kiểm tra một xâu có là xâu con của một xâu khác.

Lời giải:

n=int(input(“nhập số học sinh:”)

ds_lop=[ ]

S=”Huong”

Dem=0

for i in range(n)

hoten=input(“nhập họ tên học sinh thứ”+str(i+1)+ “:”)

ds_lop.append(hoten)

if S in ds_lop:

dem=dem+1

print(“có”,dem,”bạn tên Hương”)

Bài viết liên quan

671